This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [RFA] Fix a small memory leak in bpstat_stop_status
- From: Joel Brobecker <brobecker at gnat dot com>
- To: gdb-patches at sources dot redhat dot com
- Date: Mon, 13 Jan 2003 07:22:05 +0400
- Subject: Re: [RFA] Fix a small memory leak in bpstat_stop_status
- References: <20021212104058.GL25575@gnat.com>
Hello,
Can somebody review this patch, please?
Thank you,
--
Joel
On Thu, Dec 12, 2002 at 11:40:58AM +0100, Joel Brobecker wrote:
> This is a followup on a thread that I started, archived at:
> http://sources.redhat.com/ml/gdb-patches/2002-12/msg00358.html
>
> Basically, I extracted the part that fixed a small memory leak, and
> tested it separately, as the other part of the patch is likely to be
> superseeded by another patch submitted by Klee Dienes.
>
> 2002-12-12 Joel Brobecker <brobecker@gnat.com>
>
> * breakpoint.c (bpstat_stop_status): Fix a small memory leak.
>
> No regressions on x86-linux.
>
> Ok to apply?
> --
> Joel
> Index: breakpoint.c
> ===================================================================
> RCS file: /cvs/src/src/gdb/breakpoint.c,v
> retrieving revision 1.100
> diff -c -3 -p -r1.100 breakpoint.c
> *** breakpoint.c 4 Dec 2002 04:53:13 -0000 1.100
> --- breakpoint.c 12 Dec 2002 10:21:53 -0000
> *************** bpstat_stop_status (CORE_ADDR *pc, int n
> *** 2763,2771 ****
> /* We will stop here */
> if (b->disposition == disp_disable)
> b->enable_state = bp_disabled;
> - bs->commands = copy_command_lines (b->commands);
> if (b->silent)
> bs->print = 0;
> if (bs->commands &&
> (STREQ ("silent", bs->commands->line) ||
> (xdb_commands && STREQ ("Q", bs->commands->line))))
> --- 2767,2775 ----
> /* We will stop here */
> if (b->disposition == disp_disable)
> b->enable_state = bp_disabled;
> if (b->silent)
> bs->print = 0;
> + bs->commands = b->commands;
> if (bs->commands &&
> (STREQ ("silent", bs->commands->line) ||
> (xdb_commands && STREQ ("Q", bs->commands->line))))
> *************** bpstat_stop_status (CORE_ADDR *pc, int n
> *** 2773,2778 ****
> --- 2777,2783 ----
> bs->commands = bs->commands->next;
> bs->print = 0;
> }
> + bs->commands = copy_command_lines (bs->commands);
> }
> }
> /* Print nothing for this entry if we dont stop or if we dont print. */