From 04124c77f48b9748b88b4ccf77a36665855ee73e Mon Sep 17 00:00:00 2001 From: Antonio Borneo Date: Sat, 29 Mar 2025 22:51:59 +0100 Subject: [PATCH] target: fix memory leak in handle_target_write_memory() Commit f55ec6d44922 ("target: rewrite command 'write_memory' as COMMAND_HANDLER") adds a new return statement without freeing the allocated buffer. Add the needed free(). Fixes: f55ec6d44922 ("target: rewrite command 'write_memory' as COMMAND_HANDLER") Change-Id: I676d658118b32f4d7cc71eda3436bb52f1966cd8 Signed-off-by: Antonio Borneo Reviewed-on: https://review.openocd.org/c/openocd/+/8822 Tested-by: jenkins --- src/target/target.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/target/target.c b/src/target/target.c index 7baeeddd0..3b62e0db0 100644 --- a/src/target/target.c +++ b/src/target/target.c @@ -4608,6 +4608,7 @@ COMMAND_HANDLER(handle_target_write_memory) int jimretval = Jim_GetWide(CMD_CTX->interp, tmp, &element_wide); if (jimretval != JIM_OK) { command_print(CMD, "invalid value \"%s\"", Jim_GetString(tmp, NULL)); + free(buffer); return ERROR_COMMAND_ARGUMENT_INVALID; } -- 2.50.1