diff options
author | Mick Durkin <mick.durkin@saunalahti.fi> | 2007-12-06 12:01:51 +0000 |
---|---|---|
committer | Mick Durkin <mick.durkin@saunalahti.fi> | 2007-12-06 12:01:51 +0000 |
commit | c888def521a2a259cbf7b6018638f49ac15320ec (patch) | |
tree | f710575a11c18cdffa2b51906247ad6dba319163 /libgpsd_core.c | |
parent | d32771c3ccfb6c950e25b2bcb8c6034978a9c4c9 (diff) | |
download | gpsd-c888def521a2a259cbf7b6018638f49ac15320ec.tar.gz |
Allow for the situation where a fix message is generated...
...which has set the status to STATUS_NO_FIX. This can happen with a
gps device which generates regular fix messages, even when the signal
is unusable.
Diffstat (limited to 'libgpsd_core.c')
-rw-r--r-- | libgpsd_core.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libgpsd_core.c b/libgpsd_core.c index e4902ebd..5c5e6c66 100644 --- a/libgpsd_core.c +++ b/libgpsd_core.c @@ -749,9 +749,9 @@ gps_mask_t gpsd_poll(struct gps_device_t *session) * here, but that wasn't quite right. That tells us whether * we think we have a valid fix for the current cycle, but remains * true while following non-fix packets are received. What we - * really want to know is whether the last packet received held a fix. + * really want to know is whether the last packet received also held a fix. */ - if ((session->gpsdata.set & LATLON_SET)!=0) + if ((session->gpsdata.set & LATLON_SET )!=0 && session->gpsdata.status > STATUS_NO_FIX) session->context->fixcnt++; session->gpsdata.d_decode_time = timestamp(); |