From 6c3f2dbfeb9c822d261b00cd02e00e3febc20b85 Mon Sep 17 00:00:00 2001 From: Michael Snyder Date: Mon, 21 May 2001 18:48:26 +0000 Subject: [PATCH] 2001-05-21 Michael Snyder * remote.c (remote_async_wait): Added new variable fieldsize. Add fieldsize (return value of hex2bin) to string pointer p. --- gdb/ChangeLog | 5 +++++ gdb/remote.c | 6 ++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 19bde124e40..cf0216cd716 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2001-05-21 Michael Snyder + + * remote.c (remote_async_wait): Added new variable fieldsize. + Add fieldsize (return value of hex2bin) to string pointer p. + 2001-05-20 Stephane Carrez * m68hc11-tdep.c (m68hc11_pop_frame): Fix stack pointer computation. diff --git a/gdb/remote.c b/gdb/remote.c index a9dd2df974c..d91fac2689d 100644 --- a/gdb/remote.c +++ b/gdb/remote.c @@ -3060,6 +3060,7 @@ remote_async_wait (ptid_t ptid, struct target_waitstatus *status) { unsigned char *p1; char *p_temp; + int fieldsize; /* Read the register number */ regno = strtol ((const char *) p, &p_temp, 16); @@ -3093,8 +3094,9 @@ Packet: '%s'\n", Packet: '%s'\n", regno, p, buf); - if (hex2bin (p, regs, REGISTER_RAW_SIZE (regno)) - < REGISTER_RAW_SIZE (regno)) + fieldsize = hex2bin (p, regs, REGISTER_RAW_SIZE (regno)); + p += 2 * fieldsize; + if (fieldsize < REGISTER_RAW_SIZE (regno)) warning ("Remote reply is too short: %s", buf); supply_register (regno, regs); } -- 2.30.2