From 71fb1f2d52cdfb688c6d842050ad1f9dcf9d6bdb Mon Sep 17 00:00:00 2001 From: Yu-Han Yang Date: Fri, 9 Jul 2021 10:41:42 -0700 Subject: [PATCH] Ensure to release wakelock Bug: 124451539 Test: trivial refactor, presubmits passing Change-Id: Ic731d0593fc65e9973cd6219421f4e9646da5d3a --- .../android/server/location/gnss/GnssLocationProvider.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/services/core/java/com/android/server/location/gnss/GnssLocationProvider.java b/services/core/java/com/android/server/location/gnss/GnssLocationProvider.java index 87876496bbce9..206682e46d47b 100644 --- a/services/core/java/com/android/server/location/gnss/GnssLocationProvider.java +++ b/services/core/java/com/android/server/location/gnss/GnssLocationProvider.java @@ -1343,8 +1343,11 @@ public class GnssLocationProvider extends AbstractLocationProvider implements // it is handled (otherwise the wake lock would be leaked). mWakeLock.acquire(WAKELOCK_TIMEOUT_MILLIS); boolean success = mHandler.post(() -> { - runnable.run(); - mWakeLock.release(); + try { + runnable.run(); + } finally { + mWakeLock.release(); + } }); if (!success) { mWakeLock.release();