diff options
author | Eric S. Raymond <esr@thyrsus.com> | 2013-11-17 16:00:56 -0500 |
---|---|---|
committer | Eric S. Raymond <esr@thyrsus.com> | 2013-11-17 16:00:56 -0500 |
commit | 32c484e2061cd7993b5d693a9cbe2bda91babd5d (patch) | |
tree | 182e4f72e8bf28d4973465fe476724fc2087bf9b /gpsmon.c | |
parent | bb23daaa007705d0751e3c386da4a0fb542a91a1 (diff) | |
download | gpsd-32c484e2061cd7993b5d693a9cbe2bda91babd5d.tar.gz |
Stomp a sign-extension bug.
Diffstat (limited to 'gpsmon.c')
-rw-r--r-- | gpsmon.c | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -169,7 +169,7 @@ static void visibilize(/*@out@*/char *buf2, size_t len2, const char *buf) (void)snprintf(buf2 + strlen(buf2), 2, "%c", *sp); else (void)snprintf(buf2 + strlen(buf2), 6, "\\x%02x", - 0x00ff & (unsigned)*sp); + (unsigned)(*sp & 0xff)); } /*@-compdef -mustdefine@*/ @@ -190,14 +190,14 @@ static void cond_hexdump(/*@out@*/char *buf2, size_t len2, buf2[j] = '\0'; } else { - (void)snprintf(&buf2[j], len2-strlen(buf2), "\\x%02x", (unsigned int)buf[i]); + (void)snprintf(&buf2[j], len2-strlen(buf2), "\\x%02x", (unsigned int)(buf[i] & 0xff)); j = strlen(buf2); } } else { buf2[0] = '\0'; for (i = 0; i < len; i++) (void)snprintf(buf2 + strlen(buf2), len2 - strlen(buf2), - "%02x", (unsigned int)buf[i]); + "%02x", (unsigned int)(buf[i] & 0xff)); } } /*@+compdef +mustdefine@*/ |