From: Spencer Oliver Date: Fri, 28 Mar 2014 11:11:13 +0000 (+0000) Subject: target: remove handle_profile_command memory leak X-Git-Tag: v0.8.0-rc1~12 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=e22bad797f6c09c9ade8b8df63ff507fb9ba900d;p=openocd target: remove handle_profile_command memory leak COMMAND_PARSE_NUMBER may return, thus any memory allocated may not be freed, simple reorder fixes the issue. Change-Id: I0ce444a5b032f5c49b6d33a03a8c0b71cad49c8c Signed-off-by: Spencer Oliver Reviewed-on: http://openocd.zylin.com/2065 Tested-by: jenkins Reviewed-by: Andreas Fritiofson --- diff --git a/src/target/target.c b/src/target/target.c index c09dfd86..b868383d 100644 --- a/src/target/target.c +++ b/src/target/target.c @@ -3620,14 +3620,15 @@ COMMAND_HANDLER(handle_profile_command) uint32_t offset; uint32_t num_of_sampels; int retval = ERROR_OK; + + COMMAND_PARSE_NUMBER(u32, CMD_ARGV[0], offset); + uint32_t *samples = malloc(sizeof(uint32_t) * MAX_PROFILE_SAMPLE_NUM); if (samples == NULL) { LOG_ERROR("No memory to store samples."); return ERROR_FAIL; } - COMMAND_PARSE_NUMBER(u32, CMD_ARGV[0], offset); - /** * Some cores let us sample the PC without the * annoying halt/resume step; for example, ARMv7 PCSR.