summaryrefslogtreecommitdiff
path: root/driver_evermore.c
diff options
context:
space:
mode:
authorEric S. Raymond <esr@thyrsus.com>2011-03-29 11:13:59 -0400
committerEric S. Raymond <esr@thyrsus.com>2011-03-29 11:13:59 -0400
commita0ce32af15add094f888efb3f1b8ee33d7baa990 (patch)
tree1f66a07eb591b734e9d66d43fe92d782a9ac3b6b /driver_evermore.c
parent173c43dbc016bc44bc62a852526a87b78817d636 (diff)
downloadgpsd-a0ce32af15add094f888efb3f1b8ee33d7baa990.tar.gz
scan-build cleanup. All regression tests pass, code splints clean.
Diffstat (limited to 'driver_evermore.c')
-rw-r--r--driver_evermore.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/driver_evermore.c b/driver_evermore.c
index a8534d75..729583ff 100644
--- a/driver_evermore.c
+++ b/driver_evermore.c
@@ -154,7 +154,6 @@ gps_mask_t evermore_parse(struct gps_device_t * session, unsigned char *buf,
/* time to unstuff it and discard the header and footer */
cp = buf + 2;
- tp = buf2;
if (*cp == 0x10)
cp++;
datalen = (size_t) * cp++;
@@ -165,17 +164,14 @@ gps_mask_t evermore_parse(struct gps_device_t * session, unsigned char *buf,
datalen -= 2;
/*@ -usedef @*/
+ buf2[0] = '\0'; /* prevent 'Assigned value is garbage or undefined' from scan-build */
+ tp = buf2;
for (i = 0; i < (size_t) datalen; i++) {
*tp = *cp++;
if (*tp == 0x10)
cp++;
tp++;
}
-
- /* bail out if no payload (scan-build throws spurious error otherwise) */
- if (tp <= buf2)
- return 0;
-
type = (unsigned char)getub(buf2, 1);
/*@ +usedef @*/