From 6349316cd30d37d5e0df14c7aba8ba74854b0721 Mon Sep 17 00:00:00 2001 From: "Eric S. Raymond" Date: Mon, 1 Mar 2010 21:27:59 +0000 Subject: Pre-release splint and cppcheck cleanup. All regression tests pass. --- driver_ubx.c | 6 +++--- gpspipe.c | 4 +++- lcdgps.c | 8 +++++--- 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;idriver.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 */ -- cgit v1.2.1