Fix error message.
authorTim Newsome <tim@sifive.com>
Fri, 28 Oct 2016 20:30:43 +0000 (13:30 -0700)
committerTim Newsome <tim@sifive.com>
Fri, 28 Oct 2016 20:30:43 +0000 (13:30 -0700)
It was erroneously complaining that gdb sent too much data even when it
wasn't.

riscv/gdbserver.cc

index 16f59b20baf8a7ba4541b762a919470bd9e02fe8..dc60a3e3b4e4d19435ac9fd22f950839d1169858 100644 (file)
@@ -1712,10 +1712,10 @@ uint64_t gdbserver_t::consume_hex_number_le(
     else
       shift -= 4;
   }
-  if (shift >= xlen) {
+  if (shift > (xlen+4)) {
     fprintf(stderr,
-        "gdb sent too many data bytes. That means it thinks XLEN is greater than %d.\n"
-        "To fix that, tell gdb: set arch riscv:rv%d\n",
+        "gdb sent too many data bytes. That means it thinks XLEN is greater "
+        "than %d.\nTo fix that, tell gdb: set arch riscv:rv%d\n",
         xlen, xlen);
   }
   return value;