diff options
author | Eric S. Raymond <esr@thyrsus.com> | 2010-03-31 19:19:24 -0400 |
---|---|---|
committer | Eric S. Raymond <esr@thyrsus.com> | 2010-03-31 19:19:24 -0400 |
commit | 2a27bea64b936dffe687ed38f210dddc3ccfc681 (patch) | |
tree | d4535f6d40e06961ab6d29cf167654da2a761932 | |
parent | 4acdd7a9436153ab7ee036a935ee1abb30bcabb0 (diff) | |
download | gpsd-2a27bea64b936dffe687ed38f210dddc3ccfc681.tar.gz |
Factor out a little function to initiaslize the packet tester properly.
-rw-r--r-- | gpsd.h-tail | 1 | ||||
-rw-r--r-- | libgpsd_core.c | 3 | ||||
-rw-r--r-- | packet.c | 6 | ||||
-rw-r--r-- | test_packet.c | 1 |
4 files changed, 9 insertions, 2 deletions
diff --git a/gpsd.h-tail b/gpsd.h-tail index a56699a3..01a4f60d 100644 --- a/gpsd.h-tail +++ b/gpsd.h-tail @@ -107,6 +107,7 @@ struct gps_packet_t { } isgps; }; +extern void packet_init(struct gps_packet_t *); extern void packet_reset(struct gps_packet_t *); extern void packet_pushback(struct gps_packet_t *); extern void packet_parse(struct gps_packet_t *); diff --git a/libgpsd_core.c b/libgpsd_core.c index 34d8041f..abb7215f 100644 --- a/libgpsd_core.c +++ b/libgpsd_core.c @@ -368,8 +368,7 @@ int gpsd_activate(struct gps_device_t *session) #ifdef SIRF_ENABLE session->driver.sirf.satcounter = 0; #endif /* SIRF_ENABLE */ - session->packet.char_counter = 0; - session->packet.retry_counter = 0; + packet_init(&session->packet); gpsd_report(LOG_INF, "gpsd_activate(): opened GPS (fd %d)\n", session->gpsdata.gps_fd); @@ -1021,6 +1021,12 @@ static void character_discard(struct gps_packet_t *lexer) /* entry points begin here */ +void packet_init(struct gps_packet_t *lexer) +{ + lexer->char_counter = 0; + lexer->retry_counter = 0; +} + void packet_parse(struct gps_packet_t *lexer) /* grab a packet from the input buffer */ { diff --git a/test_packet.c b/test_packet.c index 1acd69ea..90a56fa3 100644 --- a/test_packet.c +++ b/test_packet.c @@ -239,6 +239,7 @@ static int packet_test(struct map *mp) struct gps_packet_t packet; int failure = 0; + packet_init(&packet); packet.type = BAD_PACKET; packet.state = 0; /*@i@*/memcpy(packet.inbufptr = packet.inbuffer, mp->test, mp->testlen); |