Fix bug in NetworkTimeUpdateService
Reset try again counter after a successful NTP refresh Reset alarm to run at exactly mPollingIntervalMs after the last NTP update. Bug: b/217357882 Test: Existing unit tests still pass. Change-Id: Ibee93ab305f5bcaa149007c15d12c583227678b9
This commit is contained in:
@@ -171,7 +171,9 @@ public class NetworkTimeUpdateService extends Binder {
|
||||
>= mPollingIntervalMs) {
|
||||
if (DBG) Log.d(TAG, "Stale NTP fix; forcing refresh");
|
||||
boolean isSuccessful = mTime.forceRefresh();
|
||||
if (!isSuccessful) {
|
||||
if (isSuccessful) {
|
||||
mTryAgainCounter = 0;
|
||||
} else {
|
||||
String logMsg = "forceRefresh() returned false: cachedNtpResult=" + cachedNtpResult
|
||||
+ ", currentElapsedRealtimeMillis=" + currentElapsedRealtimeMillis;
|
||||
|
||||
@@ -188,7 +190,8 @@ public class NetworkTimeUpdateService extends Binder {
|
||||
&& cachedNtpResult.getAgeMillis(currentElapsedRealtimeMillis)
|
||||
< mPollingIntervalMs) {
|
||||
// Obtained fresh fix; schedule next normal update
|
||||
resetAlarm(mPollingIntervalMs);
|
||||
resetAlarm(mPollingIntervalMs
|
||||
- cachedNtpResult.getAgeMillis(currentElapsedRealtimeMillis));
|
||||
|
||||
// Suggest the time to the time detector. It may choose use it to set the system clock.
|
||||
TimestampedValue<Long> timeSignal = new TimestampedValue<>(
|
||||
|
||||
Reference in New Issue
Block a user