Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5babb6b8 authored by Wei Wang's avatar Wei Wang Committed by android-build-merger
Browse files

Merge "Add a wakelock timeout when downloading xtra data for GNSS." into oc-dev am: b1f7358d

am: dca07572

Change-Id: I81e91999c4a289caceea2407f62ef417c4b71072
parents e09cbb8b dca07572
Loading
Loading
Loading
Loading
+9 −2
Original line number Diff line number Diff line
@@ -290,6 +290,9 @@ public class GnssLocationProvider implements LocationProviderInterface {
    // current setting - 4 hours
    private static final long MAX_RETRY_INTERVAL = 4*60*60*1000;

    // Timeout when holding wakelocks for downloading XTRA data.
    private static final long DOWNLOAD_XTRA_DATA_TIMEOUT_MS = 60 * 1000;

    private BackOff mNtpBackOff = new BackOff(RETRY_INTERVAL, MAX_RETRY_INTERVAL);
    private BackOff mXtraBackOff = new BackOff(RETRY_INTERVAL, MAX_RETRY_INTERVAL);

@@ -992,7 +995,7 @@ public class GnssLocationProvider implements LocationProviderInterface {
        mDownloadXtraDataPending = STATE_DOWNLOADING;

        // hold wake lock while task runs
        mWakeLock.acquire();
        mWakeLock.acquire(DOWNLOAD_XTRA_DATA_TIMEOUT_MS);
        Log.i(TAG, "WakeLock acquired by handleDownloadXtraData()");
        AsyncTask.THREAD_POOL_EXECUTOR.execute(new Runnable() {
            @Override
@@ -1015,7 +1018,11 @@ public class GnssLocationProvider implements LocationProviderInterface {
                }

                // release wake lock held by task
                if (mWakeLock.isHeld()) {
                    mWakeLock.release();
                } else {
                    Log.e(TAG, "WakeLock expired before release in handleDownloadXtraData()");
                }
                Log.i(TAG, "WakeLock released by handleDownloadXtraData()");
            }
        });