diff options
author | Gary E. Miller <gem@rellim.com> | 2010-04-18 19:50:17 -0700 |
---|---|---|
committer | Gary E. Miller <gem@rellim.com> | 2010-04-18 19:50:17 -0700 |
commit | df655a372c2f0997ac868a7b818ba438d17810ea (patch) | |
tree | 6aef9fe6358319d8fa677b04f5f3fe775c33f33a /driver_evermore.c | |
parent | 262282ffbbfa1756de4fc7f2c6856a4663c907a1 (diff) | |
download | gpsd-df655a372c2f0997ac868a7b818ba438d17810ea.tar.gz |
Smoke out more private copies of gps_week and move into session->context.
Prepare to do the same for Time of Week (tow).
Diffstat (limited to 'driver_evermore.c')
-rw-r--r-- | driver_evermore.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/driver_evermore.c b/driver_evermore.c index b775891c..1f8b705b 100644 --- a/driver_evermore.c +++ b/driver_evermore.c @@ -183,9 +183,10 @@ gps_mask_t evermore_parse(struct gps_device_t * session, unsigned char *buf, switch (type) { case 0x02: /* Navigation Data Output */ + session->context->gps_week = getleuw(buf2, 2); /*@ ignore @*//*@ splint is confused @ */ session->newdata.time = - gpstime_to_unix((int)getleuw(buf2, 2), + gpstime_to_unix(session->context->gps_week, getleul(buf2, 4) * 0.01) - session->context->leap_seconds; @@ -222,9 +223,10 @@ gps_mask_t evermore_parse(struct gps_device_t * session, unsigned char *buf, return mask | CLEAR_IS | REPORT_IS; case 0x04: /* DOP Data Output */ + session->context->gps_week = getleuw(buf2, 2); /*@ ignore @*//*@ splint is confused @ */ session->newdata.time = - gpstime_to_unix((int)getleuw(buf2, 2), + gpstime_to_unix(session->context->gps_week, getleul(buf2, 4) * 0.01) - session->context->leap_seconds; @@ -265,9 +267,10 @@ gps_mask_t evermore_parse(struct gps_device_t * session, unsigned char *buf, return mask; case 0x06: /* Channel Status Output */ + session->context->gps_week = getleuw(buf2, 2); /*@ ignore @*//*@ splint is confused @ */ session->gpsdata.skyview_time = - gpstime_to_unix((int)getleuw(buf2, 2), + gpstime_to_unix(session->context->gps_week, getleul(buf2, 4) * 0.01) - session->context->leap_seconds; @@ -324,9 +327,10 @@ gps_mask_t evermore_parse(struct gps_device_t * session, unsigned char *buf, case 0x08: /* Measurement Data Output */ /* clock offset is a manufacturer diagnostic */ /* (int)getleuw(buf2, 8); clock offset, 29000..29850 ?? */ + session->context->gps_week = getleuw(buf2, 2); /*@ ignore @*//*@ splint is confused @ */ session->newdata.time = - gpstime_to_unix((int)getleuw(buf2, 2), + gpstime_to_unix(session->context->gps_week, getleul(buf2, 4) * 0.01) - session->context->leap_seconds; |