diff options
Diffstat (limited to 'driver_tsip.c')
-rw-r--r-- | driver_tsip.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/driver_tsip.c b/driver_tsip.c index 0f10306f..8d30c62e 100644 --- a/driver_tsip.c +++ b/driver_tsip.c @@ -192,8 +192,8 @@ static gps_mask_t tsip_analyze(struct gps_device_t *session) session->newdata.time = gpstime_to_unix(session->context->gps_week, - session->context->gps_tow) - - session->context->leap_seconds; + session->context->gps_tow) - session->context->leap_seconds; + gpsd_rollover_check(session, session->newdata.time); mask |= TIME_IS; } gpsd_report(LOG_INF, "GPS Time %f %d %f\n", f1, s1, f2); @@ -292,6 +292,7 @@ static gps_mask_t tsip_analyze(struct gps_device_t *session) gpstime_to_unix((int)session->context->gps_week, session->context->gps_tow) - session->context->leap_seconds; + gpsd_rollover_check(session, session->newdata.time); mask |= TIME_IS; } mask |= LATLON_IS | ALTITUDE_IS | CLEAR_IS | REPORT_IS; @@ -555,6 +556,7 @@ static gps_mask_t tsip_analyze(struct gps_device_t *session) gpstime_to_unix((int)session->context->gps_week, session->context->gps_tow) - session->context->leap_seconds; + gpsd_rollover_check(session, session->newdata.time); mask |= TIME_IS; } gpsd_report(LOG_INF, "GPS DP LLA %f %f %f %f\n", @@ -654,6 +656,7 @@ static gps_mask_t tsip_analyze(struct gps_device_t *session) session->newdata.time = gpstime_to_unix((int)s4, session->context->gps_tow) - session->context->leap_seconds; + gpsd_rollover_check(session, session->newdata.time); /*@ end @*/ mask |= TIME_IS | LATLON_IS | ALTITUDE_IS | SPEED_IS | TRACK_IS | @@ -697,6 +700,7 @@ static gps_mask_t tsip_analyze(struct gps_device_t *session) gpstime_to_unix(session->context->gps_week, session->context->gps_tow) - session->context->leap_seconds; + gpsd_rollover_check(session, session->newdata.time); /*@ end @*/ session->gpsdata.status = STATUS_NO_FIX; session->newdata.mode = MODE_NO_FIX; @@ -765,6 +769,7 @@ static gps_mask_t tsip_analyze(struct gps_device_t *session) session->newdata.time = gpstime_to_unix((int)s1, session->context->gps_tow) - (double)s2; + gpsd_rollover_check(session, session->newdata.time); mask |= TIME_IS | CLEAR_IS; gpsd_report(LOG_DATA, "SP-TTS 0xab time=%.2f mask={TIME}\n", session->newdata.time); |