summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric S. Raymond <esr@thyrsus.com>2010-03-01 21:27:59 +0000
committerEric S. Raymond <esr@thyrsus.com>2010-03-01 21:27:59 +0000
commit6349316cd30d37d5e0df14c7aba8ba74854b0721 (patch)
tree94760203263f22c1403b55e9ce8865cda959c95f
parent07cd7fa607e45616371136f5136cff42c6228d5b (diff)
downloadgpsd-6349316cd30d37d5e0df14c7aba8ba74854b0721.tar.gz
Pre-release splint and cppcheck cleanup. All regression tests pass.
-rw-r--r--driver_ubx.c6
-rw-r--r--gpspipe.c4
-rw-r--r--lcdgps.c8
3 files changed, 11 insertions, 7 deletions
diff --git a/driver_ubx.c b/driver_ubx.c
index e9f9de3a..b37a7ecd 100644
--- a/driver_ubx.c
+++ b/driver_ubx.c
@@ -656,7 +656,7 @@ static void ubx_nmea_mode(struct gps_device_t *session, int mode)
return;
/*@ +charint -usedef @*/
- for(i=0;i<sizeof(session->driver.ubx.original_port_settings);i++)
+ for(i=0;i<(int)sizeof(session->driver.ubx.original_port_settings);i++)
buf[i] = session->driver.ubx.original_port_settings[i]; /* copy the original port settings */
if(buf[0] == 0x01) /* set baudrate on serial port only */
putlelong(buf, 8, session->gpsdata.dev.baudrate);
@@ -676,11 +676,11 @@ static bool ubx_speed(struct gps_device_t *session,
speed_t speed, char parity, int stopbits)
{
int i;
- unsigned char buf[20];
+ unsigned char buf[sizeof(session->driver.ubx.original_port_settings)];
unsigned long usart_mode;
/*@ +charint -usedef -compdef */
- for(i=0;i<22;i++)
+ for(i=0;i<(int)sizeof(session->driver.ubx.original_port_settings);i++)
buf[i] = session->driver.ubx.original_port_settings[i]; /* copy the original port settings */
if((!session->driver.ubx.have_port_configuration) || (buf[0] != 0x01)) /* set baudrate on serial port only */
return false;
diff --git a/gpspipe.c b/gpspipe.c
index 69dfcd91..d68a062a 100644
--- a/gpspipe.c
+++ b/gpspipe.c
@@ -151,6 +151,7 @@ static void usage(void)
);
}
+/*@ -compdestroy @*/
int main( int argc, char **argv)
{
char buf[4096];
@@ -379,8 +380,9 @@ int main( int argc, char **argv)
}
#endif /* __UNUSED__ */
- exit(0);
+ /*@i1@*/exit(0);
}
+/*@ +compdestroy @*/
static void spinner (unsigned int v, unsigned int num) {
char *spin = "|/-\\";
diff --git a/lcdgps.c b/lcdgps.c
index 02bceeac..429e1f99 100644
--- a/lcdgps.c
+++ b/lcdgps.c
@@ -230,14 +230,16 @@ int send_lcd(char *buf) {
int res;
char rcvbuf[256];
+ size_t outlen;
/* Limit the size of outgoing strings. */
- if(strlen(buf)>255) {
- buf[255]=0;
+ outlen = strlen(buf);
+ if(outlen > 255) {
+ outlen = 256;
}
/* send the command */
- res=sockwriteline(sd,buf,strlen(buf));
+ res=sockwriteline(sd,buf,outlen);
/* TODO: check return status */