summaryrefslogtreecommitdiff
path: root/driver_garmin_txt.c
diff options
context:
space:
mode:
authorEric S. Raymond <esr@thyrsus.com>2009-10-02 15:56:08 +0000
committerEric S. Raymond <esr@thyrsus.com>2009-10-02 15:56:08 +0000
commita0023da1ea2b268830d981de3b3b5b2cf6058612 (patch)
tree6a3334a9b6f72643f6d60facd416d7dd17196b16 /driver_garmin_txt.c
parent34574031fb921a546325b5339c917d64ae6c58f8 (diff)
downloadgpsd-a0023da1ea2b268830d981de3b3b5b2cf6058612.tar.gz
The new instrumentation pays off.
On NMEA devices, mode could sometimes be held across cycles when it shouldn't have been. Fix this, simplifying how cycles are tracked in the process. Some regression tests needed rebuilding. Code splints clean.
Diffstat (limited to 'driver_garmin_txt.c')
-rw-r--r--driver_garmin_txt.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/driver_garmin_txt.c b/driver_garmin_txt.c
index 3ba2c3fc..99dbaa73 100644
--- a/driver_garmin_txt.c
+++ b/driver_garmin_txt.c
@@ -288,7 +288,7 @@ gps_mask_t garmintxt_parse(struct gps_device_t *session)
strncpy(session->gpsdata.tag, "GTXT", MAXTAGLEN);
/* only one message, set cycle start */
- session->cycle_end_reliable = true | CYCLE_START | CYCLE_END;
+ session->cycle_end_reliable = true;
do {
unsigned int result;
char *buf = (char *)session->packet.outbuffer+1;
@@ -321,7 +321,7 @@ gps_mask_t garmintxt_parse(struct gps_device_t *session)
/* assume that possition is unknown; if the position is known we will fix status information later */
session->gpsdata.fix.mode = MODE_NO_FIX;
session->gpsdata.status = STATUS_NO_FIX;
- mask |= MODE_SET | STATUS_SET;
+ mask |= MODE_SET | STATUS_SET | CLEAR_SET | REPORT_SET;
/* process position */