diff options
author | Spencer Oliver <spen@spen-soft.co.uk> | 2014-03-28 11:11:13 +0000 |
---|---|---|
committer | Paul Fertser <fercerpav@gmail.com> | 2014-03-29 08:04:43 +0000 |
commit | e22bad797f6c09c9ade8b8df63ff507fb9ba900d (patch) | |
tree | 5804bbcef12a921c50be3dbbdb9228c35837a8c7 | |
parent | 8b1fabd8e000f620287b5373aa149a8eeed4709b (diff) |
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 <spen@spen-soft.co.uk>
Reviewed-on: http://openocd.zylin.com/2065
Tested-by: jenkins
Reviewed-by: Andreas Fritiofson <andreas.fritiofson@gmail.com>
-rw-r--r-- | src/target/target.c | 5 |
1 files changed, 3 insertions, 2 deletions
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. |