Later error-handling frees buf, but the first early exit doesn't. Move buf beyond it to fix the memory leak. Signed-off-by: Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx> --- commands/readline.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/commands/readline.c b/commands/readline.c index 403ac8563a36..7933a58c08b4 100644 --- a/commands/readline.c +++ b/commands/readline.c @@ -10,11 +10,13 @@ static int do_readline(int argc, char *argv[]) { - char *buf = xzalloc(CONFIG_CBSIZE); + char *buf; if (argc < 3) return COMMAND_ERROR_USAGE; + buf = xzalloc(CONFIG_CBSIZE); + command_slice_release(); if (readline(argv[1], buf, CONFIG_CBSIZE) < 0) { -- 2.29.2 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox