From mboxrd@z Thu Jan 1 00:00:00 1970 From: Fernando Nasser To: tromey@cygnus.com Cc: Insight List Subject: Re: broken code Date: Fri, 01 Dec 2000 06:27:00 -0000 Message-id: <3A27B503.D27A862D@cygnus.com> References: <87u28osscd.fsf@creche.cygnus.com> X-SW-Source: 2000-q4/msg00352.html Tom Tromey wrote: > > I see this in gdbtk-hooks.c: > > xasprintf (&buf, "gdbtk_tcl_breakpoint %s %d 0x%lx %d {%s} {%s} %d %d", > action, b->number, (long) b->address, b->line_number, filename, > bpdisp[b->disposition], b->enable, b->thread); > > In general, code like this is simply broken. Using `{%s}' works for > some situations, but not others. It seems to work, since it works in > the common cases, but it makes gdbtk less robust. > > If you need to build a list, you should use the Tcl DString functions. > > Maybe everybody working on the code already knows this. I don't know. > I didn't look to see who writes this sort of thing (I'd rather not > know :-). > We should leave the code in the gdbtk-* files alone for a while. Most of it will either move to gdb as part of the libgdb or will be changed to call libgdb functions or use the MI interface. And, "in ain't broken, don't fix it" :-) -- Fernando Nasser Red Hat Canada Ltd. E-Mail: fnasser@redhat.com 2323 Yonge Street, Suite #300 Toronto, Ontario M4P 2C9