Hi Simon, On Sun, Dec 27, 2015 at 09:22:01PM -0700, Simon Glass wrote: >Hi Peng, > >On 22 December 2015 at 02:14, Peng Fan <van.free...@gmail.com> wrote: >> From: Peng Fan <peng....@nxp.com> >> >> Whether CONFIG_SYS_HUSH_PARSER is defined or not, should always >> check to free 'buff' to avoid memory leak. > >Are you sure? I believe need_buff is only true if the simple parser is >being used.
If CONFIG_SYS_HUSH_PARSER is defined and len is not -1, need_buff is 1, then will malloc buffer and assign return value to buff. But we only free buff, when CONFIG_SYS_HUSH_PARSER is not defined and need_buff is 1. So I think this may leaks memory. I am not familar with HUSH PARSER internal. If it can handle the upper case that I described, then no need this patch. Regards, Peng. > >> >> Signed-off-by: Peng Fan <peng....@nxp.com> >> Cc: Tom Rini <tr...@konsulko.com> >> Cc: Masahiro Yamada <yamada.masah...@socionext.com> >> Cc: Simon Glass <s...@chromium.org> >> --- >> common/cli.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/common/cli.c b/common/cli.c >> index fbcd339..119d282 100644 >> --- a/common/cli.c >> +++ b/common/cli.c >> @@ -103,9 +103,9 @@ int run_command_list(const char *cmd, int len, int flag) >> * is pretty rare. >> */ >> rcode = cli_simple_run_command_list(buff, flag); >> +#endif >> if (need_buff) >> free(buff); >> -#endif >> >> return rcode; >> } >> -- >> 2.6.2 >> > >Regards, >Simon _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot