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
This commit is contained in:
Mathias K 2013-10-24 08:31:45 +02:00 committed by Spencer Oliver
parent 4f6f065201
commit a3c0f05461
1 changed files with 2 additions and 0 deletions

View File

@ -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);