diff options
author | Eric S. Raymond <esr@thyrsus.com> | 2009-09-03 10:16:43 +0000 |
---|---|---|
committer | Eric S. Raymond <esr@thyrsus.com> | 2009-09-03 10:16:43 +0000 |
commit | ff1a623dbdca3fa26de67d88739d9a039b8e39ea (patch) | |
tree | e5dd06d01abeba8e9210f65f79d4c19eeeb4cb94 /gpsutils.c | |
parent | d5755a55b8681c04ee0de3dc683124e581e47a9b (diff) | |
download | gpsd-ff1a623dbdca3fa26de67d88739d9a039b8e39ea.tar.gz |
Split eph into epx and epy internally...
...but still report eph by re-mixing them in the JSON dumper. This was
worth doing because all regression tests still pass, showing that
visible behavior for old-protocol users gas not changed.
Diffstat (limited to 'gpsutils.c')
-rw-r--r-- | gpsutils.c | 11 |
1 files changed, 7 insertions, 4 deletions
@@ -25,7 +25,8 @@ void gps_clear_fix(/*@out@*/struct gps_fix_t *fixp) fixp->climb = NAN; fixp->altitude = NAN; fixp->ept = NAN; - fixp->eph = NAN; + fixp->epx = NAN; + fixp->epy = NAN; fixp->epv = NAN; fixp->epd = NAN; fixp->eps = NAN; @@ -52,7 +53,7 @@ unsigned int gps_valid_fields(/*@in@*/struct gps_fix_t *fixp) valid |= CLIMB_SET; if (isnan(fixp->ept) == 0) valid |= TIMERR_SET; - if (isnan(fixp->eph) == 0) + if (isnan(fixp->epx) == 0 && isnan(fixp->epy) == 0) valid |= HERR_SET; if (isnan(fixp->epv) == 0) valid |= VERR_SET; @@ -125,8 +126,10 @@ void gps_merge_fix(/*@ out @*/struct gps_fix_t *to, to->climb = from->climb; if ((transfer & TIMERR_SET)!=0) to->ept = from->ept; - if ((transfer & HERR_SET)!=0) - to->eph = from->eph; + if ((transfer & HERR_SET)!=0) { + to->epx = from->epx; + to->epy = from->epy; + } if ((transfer & VERR_SET)!=0) to->epv = from->epv; if ((transfer & SPEEDERR_SET)!=0) |