diff options
author | Marc Schink <dev@zapb.de> | 2023-11-01 09:27:05 +0100 |
---|---|---|
committer | Antonio Borneo <borneo.antonio@gmail.com> | 2023-11-18 11:16:53 +0000 |
commit | 3862e07688ea68298841891145deddd226c3c7e5 (patch) | |
tree | d6fa9b5e4a05d4a749e3fee205f518b94bd2beca /src/target | |
parent | d4575b647a3603200a9bb4a784d170f792ab88d0 (diff) | |
download | riscv-openocd-3862e07688ea68298841891145deddd226c3c7e5.zip riscv-openocd-3862e07688ea68298841891145deddd226c3c7e5.tar.gz riscv-openocd-3862e07688ea68298841891145deddd226c3c7e5.tar.bz2 |
target: Remove break/watchpoints in target_destroy()
Break- and watchpoints are not removed when a target is destroyed
which introduces a memory leak.
Change-Id: I6143d48f7efd765b7752a12fdc337da3496d896f
Signed-off-by: Marc Schink <dev@zapb.de>
Reviewed-on: https://review.openocd.org/c/openocd/+/7956
Reviewed-by: Marek Vrbka <marek.vrbka@codasip.com>
Reviewed-by: Tomas Vanek <vanekt@fbl.cz>
Tested-by: jenkins
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
Diffstat (limited to 'src/target')
-rw-r--r-- | src/target/target.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/target/target.c b/src/target/target.c index 148bc9f..30f7029 100644 --- a/src/target/target.c +++ b/src/target/target.c @@ -2212,6 +2212,9 @@ uint32_t target_get_working_area_avail(struct target *target) static void target_destroy(struct target *target) { + breakpoint_remove_all(target); + watchpoint_remove_all(target); + if (target->type->deinit_target) target->type->deinit_target(target); |