aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHsiangkai Wang <hsiangkai@gmail.com>2013-04-23 18:42:07 +0800
committerFreddie Chopin <freddie.chopin@gmail.com>2013-04-28 07:34:34 +0000
commit992059b8985cccfa19e0579ba5835f343b1179e5 (patch)
tree78fd6817dc064b0603432811012cc35da4858ff4
parente12989a84b2c9f59e231af080e7dfcc9d2845eb2 (diff)
gdb server: Fix bug. Parse 'M' packet error.
The format of 'M' packet is 'M addr,length:XX...'. The data follows ':' immediately. No need to '+2' to SEPARATOR in unhexify(), because SEPARATOR points to data correctly. Change-Id: I15b5758b540816cc727752e7bf68cd45e623f603 Signed-off-by: Hsiangkai Wang <hsiangkai@gmail.com> Reviewed-on: http://openocd.zylin.com/1360 Tested-by: jenkins Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk> Reviewed-by: Freddie Chopin <freddie.chopin@gmail.com>
-rw-r--r--src/server/gdb_server.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/server/gdb_server.c b/src/server/gdb_server.c
index cb96bf29..e7f54281 100644
--- a/src/server/gdb_server.c
+++ b/src/server/gdb_server.c
@@ -1259,7 +1259,7 @@ static int gdb_write_memory_packet(struct connection *connection,
LOG_DEBUG("addr: 0x%8.8" PRIx32 ", len: 0x%8.8" PRIx32 "", addr, len);
- if (unhexify((char *)buffer, separator + 2, len) != (int)len)
+ if (unhexify((char *)buffer, separator, len) != (int)len)
LOG_ERROR("unable to decode memory packet");
retval = target_write_buffer(target, addr, len, buffer);