diff options
| -rw-r--r-- | services/core/java/com/android/server/NetworkTimeUpdateService.java | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/NetworkTimeUpdateService.java b/services/core/java/com/android/server/NetworkTimeUpdateService.java index a0f239d43927..fcde533fe05c 100644 --- a/services/core/java/com/android/server/NetworkTimeUpdateService.java +++ b/services/core/java/com/android/server/NetworkTimeUpdateService.java @@ -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<>( |