From 0c9935502ff2db25eabe36ee00ddc3d4c02cf3ca Mon Sep 17 00:00:00 2001 From: Jim Kingdon Date: Wed, 30 Mar 1994 03:50:23 +0000 Subject: [PATCH] * remote.c (getpkt): If we get a timeout, actually retry rather than just giving up the first time it happens. * remote.c: Document sequence numbers. (remote_store_registers): Change syntax of 'P' request so that it never looks like a sequence number. --- gdb/ChangeLog | 10 +++++++++- gdb/remote.c | 13 +++++++------ 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 39ca987..0bcefda 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,6 +1,14 @@ +Tue Mar 29 19:41:34 1994 Jim Kingdon (kingdon@lioth.cygnus.com) + + * remote.c (getpkt): If we get a timeout, actually retry rather + than just giving up the first time it happens. + * remote.c: Document sequence numbers. + (remote_store_registers): Change syntax of 'P' request so that it + never looks like a sequence number. + Tue Mar 29 16:06:01 1994 Kung Hsu (kung@mexican.cygnus.com) - * os9kread.c (record_minmal_symbol): add section_offset to + * os9kread.c (record_minimal_symbol): add section_offset to relocate minimal symbol table. * os9kread.c (read_minimal_symbols): ditto. * os9kread.c (os9k_symfile_init): increase size of dbg and stb diff --git a/gdb/remote.c b/gdb/remote.c index a82f6bb..8cea2e0 100644 --- a/gdb/remote.c +++ b/gdb/remote.c @@ -25,7 +25,8 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ $ # CSUM1 CSUM2 must be ASCII alphanumeric and cannot include characters - '$' or '#' + '$' or '#'. If starts with two characters followed by + ':', then the existing stubs interpret this as a sequence number. CSUM1 and CSUM2 are ascii hex representation of an 8-bit checksum of , the most significant nibble is sent first. @@ -54,7 +55,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ reply OK for success ENN for an error - write reg Pn...:r... Write register n... with value r..., + write reg Pn...=r... Write register n... with value r..., which contains two hex digits for each byte in the register (target byte order). @@ -712,7 +713,7 @@ remote_store_registers (regno) /* Try storing a single register. */ char *regp; - sprintf (buf, "P%x:", regno); + sprintf (buf, "P%x=", regno); p = buf + strlen (buf); regp = ®isters[REGISTER_BYTE (regno)]; for (i = 0; i < REGISTER_RAW_SIZE (regno); ++i) @@ -1186,9 +1187,9 @@ getpkt (retbuf, forever) { if (forever) continue; - if (++retries >= MAX_RETRIES) - if (remote_debug) puts_filtered ("Timed out.\n"); - goto out; + if (remote_debug) + puts_filtered ("Timed out.\n"); + goto whole; } if (c == SERIAL_EOF) -- 2.7.4