Fri Apr 10 15:48:10 1998 Jason Molenda (crash@bugshack.cygnus.com)

* gdbtk.c (gdb_listfiles): Allocate space for 'files' dynamically.


Harumph, my change got lost in the foundry->devo merge.
This commit is contained in:
Jason Molenda 1998-04-10 22:49:13 +00:00
parent c94a25c228
commit 6da4c15f22
2 changed files with 20 additions and 1 deletions

View File

@ -1,3 +1,7 @@
Fri Apr 10 15:48:10 1998 Jason Molenda (crash@bugshack.cygnus.com)
* gdbtk.c (gdb_listfiles): Allocate space for 'files' dynamically.
Thu Apr 9 14:20:59 1998 Martin M. Hunt <hunt@cygnus.com>
* gdbtk.c (gdbtk_init): Remove redundant variable "IDE".

View File

@ -1278,10 +1278,14 @@ gdb_listfiles (clientData, interp, objc, objv)
struct objfile *objfile;
struct partial_symtab *psymtab;
struct symtab *symtab;
char *lastfile, *pathname, *files[1000];
char *lastfile, *pathname, **files;
int files_size;
int i, numfiles = 0, len = 0;
Tcl_Obj *mylist;
files_size = 1000;
files = (char **) xmalloc (sizeof (char *) * files_size);
if (objc > 2)
{
Tcl_WrongNumArgs (interp, 1, objv, "Usage: gdb_listfiles ?pathname?");
@ -1294,6 +1298,11 @@ gdb_listfiles (clientData, interp, objc, objv)
ALL_PSYMTABS (objfile, psymtab)
{
if (numfiles == files_size)
{
files_size = files_size * 2;
files = (char **) xrealloc (files, sizeof (char *) * files_size);
}
if (len == 0)
{
if (psymtab->filename)
@ -1307,6 +1316,11 @@ gdb_listfiles (clientData, interp, objc, objv)
ALL_SYMTABS (objfile, symtab)
{
if (numfiles == files_size)
{
files_size = files_size * 2;
files = (char **) xrealloc (files, sizeof (char *) * files_size);
}
if (len == 0)
{
if (symtab->filename)
@ -1328,6 +1342,7 @@ gdb_listfiles (clientData, interp, objc, objv)
lastfile = files[i];
}
Tcl_SetObjResult (interp, mylist);
free (files);
return TCL_OK;
}