diff options
| author | 2021-03-12 01:17:46 +0000 | |
|---|---|---|
| committer | 2021-03-12 01:17:46 +0000 | |
| commit | 62acb3887fc6759943b5abafdbfbe5ae525a8257 (patch) | |
| tree | bb1cf34c7bc710ca0b7d6834aefa8ec21eef2594 | |
| parent | 024f239d4a8b721b8fdef3919c9db2db490e65ed (diff) | |
| parent | 1db5dd180b9b3adb1903044ddaebf17f2f189b20 (diff) | |
Merge "Prevent fail to get device config while dumping package service" into sc-dev
| -rw-r--r-- | services/core/java/com/android/server/pm/PackageManagerService.java | 18 | ||||
| -rw-r--r-- | services/core/java/com/android/server/power/PreRebootLogger.java | 4 |
2 files changed, 14 insertions, 8 deletions
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index ff87f1c4b4ca..f828a119f988 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -27803,13 +27803,23 @@ public class PackageManagerService extends IPackageManager.Stub } private static String getDefaultTimeouts() { - return DeviceConfig.getString(DeviceConfig.NAMESPACE_PACKAGE_MANAGER_SERVICE, - PROPERTY_INCFS_DEFAULT_TIMEOUTS, ""); + final long token = Binder.clearCallingIdentity(); + try { + return DeviceConfig.getString(NAMESPACE_PACKAGE_MANAGER_SERVICE, + PROPERTY_INCFS_DEFAULT_TIMEOUTS, ""); + } finally { + Binder.restoreCallingIdentity(token); + } } private static String getKnownDigestersList() { - return DeviceConfig.getString(DeviceConfig.NAMESPACE_PACKAGE_MANAGER_SERVICE, - PROPERTY_KNOWN_DIGESTERS_LIST, ""); + final long token = Binder.clearCallingIdentity(); + try { + return DeviceConfig.getString(NAMESPACE_PACKAGE_MANAGER_SERVICE, + PROPERTY_KNOWN_DIGESTERS_LIST, ""); + } finally { + Binder.restoreCallingIdentity(token); + } } /** diff --git a/services/core/java/com/android/server/power/PreRebootLogger.java b/services/core/java/com/android/server/power/PreRebootLogger.java index 2e4b054b829c..c9e81ed7a796 100644 --- a/services/core/java/com/android/server/power/PreRebootLogger.java +++ b/services/core/java/com/android/server/power/PreRebootLogger.java @@ -19,7 +19,6 @@ package com.android.server.power; import android.annotation.DurationMillisLong; import android.annotation.NonNull; import android.content.Context; -import android.os.Binder; import android.os.Environment; import android.os.IBinder; import android.os.ParcelFileDescriptor; @@ -147,7 +146,6 @@ final class PreRebootLogger { return; } - final long token = Binder.clearCallingIdentity(); try { final File dumpFile = new File(dumpDir, serviceName); final ParcelFileDescriptor fd = ParcelFileDescriptor.open(dumpFile, @@ -156,8 +154,6 @@ final class PreRebootLogger { binder.dump(fd.getFileDescriptor(), ArrayUtils.emptyArray(String.class)); } catch (FileNotFoundException | RemoteException e) { Slog.e(TAG, String.format("Failed to dump %s service before reboot", serviceName), e); - } finally { - Binder.restoreCallingIdentity(token); } } } |