projects
/
fw
/
openocd
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
f6b4079
)
target/mem_ap: fix two memory leaks
author
Antonio Borneo
<borneo.antonio@gmail.com>
Fri, 22 May 2020 16:08:55 +0000
(18:08 +0200)
committer
Antonio Borneo
<borneo.antonio@gmail.com>
Sat, 6 Jun 2020 17:05:08 +0000
(18:05 +0100)
The target mem_ap misses the method 'deinit_target' and does not
free the memory allocated during 'target create' and 'configure'.
Add the missing method and free the allocated memory.
Issue identified with valgrind.
Change-Id: If0d0114a75dd76a8b65c2d46d96c6085fd31a09d
Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
Reviewed-on: http://openocd.zylin.com/5700
Tested-by: jenkins
src/target/mem_ap.c
patch
|
blob
|
history
diff --git
a/src/target/mem_ap.c
b/src/target/mem_ap.c
index 29cd37a90078bbefeb9a1dd323aff600787a3a65..ade48b6d7695806c9de0da1124a949f06cd01852 100644
(file)
--- a/
src/target/mem_ap.c
+++ b/
src/target/mem_ap.c
@@
-65,6
+65,15
@@
static int mem_ap_init_target(struct command_context *cmd_ctx, struct target *ta
return ERROR_OK;
}
+static void mem_ap_deinit_target(struct target *target)
+{
+ LOG_DEBUG("%s", __func__);
+
+ free(target->private_config);
+ free(target->arch_info);
+ return;
+}
+
static int mem_ap_arch_state(struct target *target)
{
LOG_DEBUG("%s", __func__);
@@
-169,6
+178,7
@@
struct target_type mem_ap_target = {
.target_create = mem_ap_target_create,
.init_target = mem_ap_init_target,
+ .deinit_target = mem_ap_deinit_target,
.examine = mem_ap_examine,
.target_jim_configure = adiv5_jim_configure,