This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Fix for PR/1806


Jon Beniston wrote:
Hi,

The following patch should fix PR/1806. If good, can someone commit it
please?

I've checked this in. (I've also sent Jon assignment paperwork).

Andrew

2004-11-05 Jon Beniston <jon@beniston.com>

* remote.c (putpkt_binary) Fix PR gdb/1806. Send an ACK when an unexpected packet is received, as the target stubs continually retransmit the same packet until ACKed.


diff -c -p -r1.152 remote.c
*** remote.c    27 Oct 2004 20:03:50 -0000      1.152
--- remote.c    5 Nov 2004 15:30:34 -0000
*************** putpkt_binary (char *buf, int cnt)
*** 3972,3980 ****
              {
                if (remote_debug)
                  fprintf_unfiltered (gdb_stdlog, "Packet instead of Ack,
ignoring it\n");
!               /* It's probably an old response, and we're out of sync.
!                  Just gobble up the packet and ignore it.  */
                read_frame (junkbuf, sizeof_junkbuf);
                continue;       /* Now, go look for + */
              }
            default:
--- 3972,3982 ----
              {
                if (remote_debug)
                  fprintf_unfiltered (gdb_stdlog, "Packet instead of Ack,
ignoring it\n");
!               /* It's probably an old response sent because an ACK was
lost.
!                  Gobble up the packet and ack it so it doesn't get
!                  retransmitted when we resend this packet.  */
                read_frame (junkbuf, sizeof_junkbuf);
+               serial_write (remote_desc, "+", 1);
                continue;       /* Now, go look for + */
              }
            default:





Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]