diff options
author | Mathias K <kesmtp@freenet.de> | 2013-10-24 08:31:45 +0200 |
---|---|---|
committer | Spencer Oliver <spen@spen-soft.co.uk> | 2013-10-31 21:11:48 +0000 |
commit | a3c0f0546164874a50b2e8fb482403199ea2d358 (patch) | |
tree | cb6a784fecc993aab7d4e58995ab4937f4c9ba1c /src/target | |
parent | 4f6f065201e908497f087769dcdff1728466df4e (diff) | |
download | riscv-openocd-a3c0f0546164874a50b2e8fb482403199ea2d358.zip riscv-openocd-a3c0f0546164874a50b2e8fb482403199ea2d358.tar.gz riscv-openocd-a3c0f0546164874a50b2e8fb482403199ea2d358.tar.bz2 |
target: fix mem2array/array2mem
if data size is bigger than transfer buffer, all portions are
transferred from/to the same target address - address advance
after successful transmission missed.
Change-Id: I79a6c388af197ac062d2807e397a2d7947400520
Signed-off-by: Sergey A. Borshch <sb-sf@users.sourceforge.net>
Signed-off-by: Mathias K <kesmtp@freenet.de>
Reviewed-on: http://openocd.zylin.com/1679
Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk>
Tested-by: jenkins
Diffstat (limited to 'src/target')
-rw-r--r-- | src/target/target.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/target/target.c b/src/target/target.c index 8ca1cf3..3042d5d 100644 --- a/src/target/target.c +++ b/src/target/target.c @@ -3767,6 +3767,7 @@ static int target_mem2array(Jim_Interp *interp, struct target *target, int argc, new_int_array_element(interp, varname, n, v); } len -= count; + addr += count * width; } } @@ -3960,6 +3961,7 @@ static int target_array2mem(Jim_Interp *interp, struct target *target, e = JIM_ERR; break; } + addr += count * width; } free(buffer); |