[PATCH/commit] Handle errors in tracepoint target agent

Stan Shebs stan@codesourcery.com
Fri Mar 26 12:50:00 GMT 2010


Pedro Alves wrote:
> On Friday 26 March 2010 01:55:50, Stan Shebs wrote:
>   
>>  The error message is never NULL, I added the MI 
>> status bit overlooked before, 
>>     
>
> But now, `error_desc' is leaking in the case you xmalloc it.
>   
It was leaking before. :-)  It needs to stick around indefinitely; it 
guess it would work to free an old one just before allocating a new one.
> When you fix that leak, you'll stumble of the fact that
> in some cases you have this:
>
>  ts->error_desc = ""
>
> while in others you have this:
>
>  ts->error_desc = (char *) xmalloc (p2 - p1 + 1);
>   
No, because the p2 != p1 test prior ensures we only allocate non-empty 
strings.
> How can you reliably know if you may xfree
> ts->error_desc that way?  xfree ("") is a no go.
> Comparing a pointer with "" is also not good.
>   
strlen.

Stan



More information about the Gdb-patches mailing list