aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSpencer Oliver <spen@spen-soft.co.uk>2013-06-05 20:19:11 +0100
committerSpencer Oliver <spen@spen-soft.co.uk>2013-06-12 14:41:43 +0000
commit3a8a6e5c3e43bbe543bc7a0a7503173e4eadf2bc (patch)
treead722205697116911bb77a32c1da48db52c46d19 /src
parentbbc193ef8d25243a8f7e861de3a8820206939e9c (diff)
downloadriscv-openocd-3a8a6e5c3e43bbe543bc7a0a7503173e4eadf2bc.zip
riscv-openocd-3a8a6e5c3e43bbe543bc7a0a7503173e4eadf2bc.tar.gz
riscv-openocd-3a8a6e5c3e43bbe543bc7a0a7503173e4eadf2bc.tar.bz2
cortex_a: remove memory leak on failure
If mem_ap_sel_write_atomic_u32 fails then tmp_buff may not be released. Detected by clang. Change-Id: I3d5416bd47d0eea61f61ec02ac5e43c82f114108 Signed-off-by: Spencer Oliver <spen@spen-soft.co.uk> Reviewed-on: http://openocd.zylin.com/1433 Tested-by: jenkins Reviewed-by: Andreas Fritiofson <andreas.fritiofson@gmail.com>
Diffstat (limited to 'src')
-rw-r--r--src/target/cortex_a.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/target/cortex_a.c b/src/target/cortex_a.c
index 1bd473c..9691580 100644
--- a/src/target/cortex_a.c
+++ b/src/target/cortex_a.c
@@ -1978,7 +1978,7 @@ static int cortex_a8_read_apb_ab_memory(struct target *target,
retval =
mem_ap_sel_write_atomic_u32(swjdp, armv7a->debug_ap, armv7a->debug_base + CPUDBG_DRCR, 1<<2);
if (retval != ERROR_OK)
- return retval;
+ goto error_free_buff_r;
/* Read DSCR */
retval = mem_ap_sel_read_atomic_u32(swjdp, armv7a->debug_ap,