* remote-mips.c (mips_request): Use unsigned long during parsing
authorFrank Ch. Eigler <fche@redhat.com>
Tue, 17 Feb 1998 23:14:57 +0000 (23:14 +0000)
committerFrank Ch. Eigler <fche@redhat.com>
Tue, 17 Feb 1998 23:14:57 +0000 (23:14 +0000)
  returned value from monitor, to prevent accidental sign extension.

gdb/ChangeLog
gdb/remote-mips.c

index 702ea22e2d73e295b5f31b79ad740568cdbea81c..1b89f95374ef0258c92c87930fa8f6a552beab07 100644 (file)
@@ -1,3 +1,8 @@
+Tue Feb 17 18:05:05 1998  Frank Ch. Eigler  <fche@cygnus.com>
+
+       * remote-mips.c (mips_request): Use unsigned long during parsing
+       returned value from monitor, to prevent accidental sign extension.
+
 Tue Feb 17 14:28:33 1998  Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
 
         * acconfig.h: FORCE_MMCHECK changed to MMCHECK_FORCE.
index 0d0d5f93573b00b7d3cfa08c5fa2af3390da0b87..bdd50c56c29f1ad4b577f7812db0ae716a9a5897 100644 (file)
@@ -1260,7 +1260,7 @@ mips_request (cmd, addr, data, perr, timeout, buff)
   int rpid;
   char rcmd;
   int rerrflg;
-  int rresponse;
+  unsigned long rresponse;
 
   if (buff == (char *) NULL)
     buff = myBuff;
@@ -1285,7 +1285,7 @@ mips_request (cmd, addr, data, perr, timeout, buff)
   len = mips_receive_packet (buff, 1, timeout);
   buff[len] = '\0';
 
-  if (sscanf (buff, "0x%x %c 0x%x 0x%x",
+  if (sscanf (buff, "0x%x %c 0x%x 0x%lx",
              &rpid, &rcmd, &rerrflg, &rresponse) != 4
       || (cmd != '\0' && rcmd != cmd))
     mips_error ("Bad response from remote board");