Merge "Fix DevicePolicyManager.isBackupServiceEnabled() breakage."

This commit is contained in:
TreeHugger Robot
2020-12-10 16:59:04 +00:00
committed by Android (Google) Code Review
2 changed files with 10 additions and 8 deletions

View File

@@ -512,7 +512,7 @@ public class BackupManagerService extends IBackupManager.Stub {
int callingUid = Binder.getCallingUid();
if (CompatChanges.isChangeEnabled(
BackupManager.IS_BACKUP_SERVICE_ACTIVE_ENFORCE_PERMISSION_IN_SERVICE, callingUid)) {
mContext.enforceCallingPermission(android.Manifest.permission.BACKUP,
mContext.enforceCallingOrSelfPermission(android.Manifest.permission.BACKUP,
"isBackupServiceActive");
}
synchronized (mStateLock) {

View File

@@ -13478,14 +13478,16 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager {
final CallerIdentity caller = getCallerIdentity(admin);
Preconditions.checkCallAuthorization(isDeviceOwner(caller) || isProfileOwner(caller));
synchronized (getLockObject()) {
try {
IBackupManager ibm = mInjector.getIBackupManager();
return ibm != null && ibm.isBackupServiceActive(caller.getUserId());
} catch (RemoteException e) {
throw new IllegalStateException("Failed requesting backup service state.", e);
return mInjector.binderWithCleanCallingIdentity(() -> {
synchronized (getLockObject()) {
try {
IBackupManager ibm = mInjector.getIBackupManager();
return ibm != null && ibm.isBackupServiceActive(caller.getUserId());
} catch (RemoteException e) {
throw new IllegalStateException("Failed requesting backup service state.", e);
}
}
}
});
}
@Override