diff options
author | Hsiangkai Wang <hsiangkai@gmail.com> | 2013-04-23 18:42:07 +0800 |
---|---|---|
committer | Freddie Chopin <freddie.chopin@gmail.com> | 2013-04-28 07:34:34 +0000 |
commit | 992059b8985cccfa19e0579ba5835f343b1179e5 (patch) | |
tree | 78fd6817dc064b0603432811012cc35da4858ff4 /src | |
parent | e12989a84b2c9f59e231af080e7dfcc9d2845eb2 (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>
Diffstat (limited to 'src')
-rw-r--r-- | src/server/gdb_server.c | 2 |
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); |