[PATCH] sim: Be sure of calling freeargv() after successfully call buildargv().
Chen Gang S
gang.chen@sunrus.com.cn
Wed Jan 28 22:12:00 GMT 2015
On 1/28/15 23:53, Michael Eager wrote:
> On 01/28/15 03:45, Chen Gang S wrote:
>> buildargv() and freeargv() are pairs, so need be sure of them always
>> paired to avoid memory leak.
>>
>> 2015-01-28 Chen Gang <gang.chen.5i5j@gmail.com>
>>
>> * common/sim-options.c (sim_args_command): Call freeargv() when
>> failure occurs.
>> * mcore/interp.c (sim_do_command): Call freeargv() before return.
>> * microblaze/interp.c (sim_do_command): Call freeargv() before
>> return.
>
>
> OK for Microblaze.
>
> There appear to be other places where buildargv() is not followed by
> freeargv(). See sim/common/run.c. There may be others.
>
For me, I intended to skip buildargv() in "sim/common/run.c", because it
may contents read only memory. It is in main(), also main() often uses
exit(), so I skip it, it doesn't matter.
gdb also uses buildargv(), but it just wraps buildargv() and freeargv(),
so at least it is another patch (either, at least now, I do not find any
issues about it in gdb).
Except the above 2, for me, there are no any other places to use
buildargv().
Does the patch comments need to mention about the contents above?
Thanks.
--
Chen Gang
Open, share, and attitude like air, water, and life which God blessed
More information about the Binutils
mailing list