This is the mail archive of the
insight@sources.redhat.com
mailing list for the Insight project.
Re: [patch] updates gdbtk to use lbasename() do to shared libheader tweaks.
- From: Keith Seitz <keiths at redhat dot com>
- To: Paul Schlie <schlie at comcast dot net>
- Cc: "insight at sources dot redhat dot com" <insight at sources dot redhat dot com>
- Date: Thu, 26 May 2005 18:31:02 -0700
- Subject: Re: [patch] updates gdbtk to use lbasename() do to shared libheader tweaks.
- References: <BEBBCF77.A49F%schlie@comcast.net>
On Thu, 2005-05-26 at 19:09 -0400, Paul Schlie wrote:
> (patch enclosed as an attachment, so don't know if it's visible on boards)
Hmm. For some reason, I could not apply your patch. Goofy. Fortunately,
it was simple enough.
I have also take the opportunity to remove a few other compiler warnings
stemming from some gdb "API" changes from char* to gdb_byte*.
I tried to run this through the testsuite, but I see that varobj.c is
throwing an internal error trying to run c_variable.exp. :-(
I've attached the patch I committed.
Thanks,
Keith
ChangeLog
2005-05-26 Keith Seitz <keiths@redhat.com>
* generic/gdbtk-cmds.c (gdb_set_mem): target_write_memory now takes
gdb_byte* instead of char*.
* generic/gdbtk-register.c (get_register): frame_register and val_print
take gdb_byte* instead of char*.
* generic/gdbtk-wrapper.c: Ditto the val_print part.
From Paul Schlie <schlie@comcast.net>:
* generic/gdbtk-bp.c (gdb_set_bp): Use lbasename instead of basename.
* generic/gdbtk-cmds.c (gdb_listfiles): Likewise.
Index: generic/gdbtk-bp.c
===================================================================
RCS file: /cvs/src/src/gdb/gdbtk/generic/gdbtk-bp.c,v
retrieving revision 1.24
diff -u -p -r1.24 gdbtk-bp.c
--- generic/gdbtk-bp.c 2 Jul 2004 22:00:56 -0000 1.24
+++ generic/gdbtk-bp.c 27 May 2005 01:21:29 -0000
@@ -535,7 +535,7 @@ gdb_set_bp (ClientData clientData, Tcl_I
b->thread = thread;
/* FIXME: this won't work for duplicate basenames! */
- xasprintf (&buf, "%s:%d", basename (Tcl_GetStringFromObj (objv[1], NULL)),
+ xasprintf (&buf, "%s:%d", lbasename (Tcl_GetStringFromObj (objv[1], NULL)),
line);
b->addr_string = xstrdup (buf);
free(buf);
Index: generic/gdbtk-cmds.c
===================================================================
RCS file: /cvs/src/src/gdb/gdbtk/generic/gdbtk-cmds.c,v
retrieving revision 1.88
diff -u -p -r1.88 gdbtk-cmds.c
--- generic/gdbtk-cmds.c 17 Feb 2005 07:15:50 -0000 1.88
+++ generic/gdbtk-cmds.c 27 May 2005 01:21:30 -0000
@@ -1120,12 +1120,13 @@ gdb_listfiles (ClientData clientData, Tc
struct objfile *objfile;
struct partial_symtab *psymtab;
struct symtab *symtab;
- char *lastfile, *pathname = NULL, **files;
+ const char *lastfile, *pathname = NULL;
+ const char **files;
int files_size;
int i, numfiles = 0, len = 0;
files_size = 1000;
- files = (char **) xmalloc (sizeof (char *) * files_size);
+ files = (const char **) xmalloc (sizeof (char *) * files_size);
if (objc > 2)
{
@@ -1140,14 +1141,14 @@ gdb_listfiles (ClientData clientData, Tc
if (numfiles == files_size)
{
files_size = files_size * 2;
- files = (char **) xrealloc (files, sizeof (char *) * files_size);
+ files = (const char **) xrealloc (files, sizeof (char *) * files_size);
}
if (psymtab->filename)
{
if (!len || !strncmp (pathname, psymtab->filename, len)
- || !strcmp (psymtab->filename, basename (psymtab->filename)))
+ || !strcmp (psymtab->filename, lbasename (psymtab->filename)))
{
- files[numfiles++] = basename (psymtab->filename);
+ files[numfiles++] = lbasename (psymtab->filename);
}
}
}
@@ -1157,14 +1158,14 @@ gdb_listfiles (ClientData clientData, Tc
if (numfiles == files_size)
{
files_size = files_size * 2;
- files = (char **) xrealloc (files, sizeof (char *) * files_size);
+ files = (const char **) xrealloc (files, sizeof (char *) * files_size);
}
if (symtab->filename && symtab->linetable && symtab->linetable->nitems)
{
if (!len || !strncmp (pathname, symtab->filename, len)
- || !strcmp (symtab->filename, basename (symtab->filename)))
+ || !strcmp (symtab->filename, lbasename (symtab->filename)))
{
- files[numfiles++] = basename (symtab->filename);
+ files[numfiles++] = lbasename (symtab->filename);
}
}
}
@@ -2278,7 +2279,7 @@ gdb_set_mem (ClientData clientData, Tcl_
int objc, Tcl_Obj *CONST objv[])
{
CORE_ADDR addr;
- char buf[128];
+ gdb_byte buf[128];
char *hexstr;
int len, size;
@@ -2303,7 +2304,7 @@ gdb_set_mem (ClientData clientData, Tcl_
/* Convert hexstr to binary and write */
if (hexstr[0] == '0' && hexstr[1] == 'x')
hexstr += 2;
- size = hex2bin (hexstr, buf, strlen (hexstr));
+ size = hex2bin (hexstr, (char *) buf, strlen (hexstr));
if (size < 0)
{
/* Error in input */
Index: generic/gdbtk-register.c
===================================================================
RCS file: /cvs/src/src/gdb/gdbtk/generic/gdbtk-register.c,v
retrieving revision 1.27
diff -u -p -r1.27 gdbtk-register.c
--- generic/gdbtk-register.c 31 Oct 2004 10:05:09 -0000 1.27
+++ generic/gdbtk-register.c 27 May 2005 01:21:30 -0000
@@ -265,7 +265,7 @@ get_register (int regnum, void *arg)
CORE_ADDR addr;
enum lval_type lval;
struct type *reg_vtype;
- char buffer[MAX_REGISTER_SIZE];
+ gdb_byte buffer[MAX_REGISTER_SIZE];
int optim, format;
struct cleanup *old_chain = NULL;
struct ui_file *stb;
Index: generic/gdbtk-wrapper.c
===================================================================
RCS file: /cvs/src/src/gdb/gdbtk/generic/gdbtk-wrapper.c,v
retrieving revision 1.11
diff -u -p -r1.11 gdbtk-wrapper.c
--- generic/gdbtk-wrapper.c 18 Jan 2005 00:14:39 -0000 1.11
+++ generic/gdbtk-wrapper.c 27 May 2005 01:21:30 -0000
@@ -192,7 +192,7 @@ wrap_val_print (char *a)
{
struct gdb_wrapper_arguments **args = (struct gdb_wrapper_arguments **) a;
struct type *type;
- char *valaddr;
+ const gdb_byte *valaddr;
CORE_ADDR address;
struct ui_file *stream;
int format;
@@ -201,7 +201,7 @@ wrap_val_print (char *a)
enum val_prettyprint pretty;
type = (struct type *) (*args)->args[0];
- valaddr = (char *) (*args)->args[1];
+ valaddr = (gdb_byte *) (*args)->args[1];
address = *(CORE_ADDR *) (*args)->args[2];
stream = (struct ui_file *) (*args)->args[3];
format = (int) (*args)->args[4];