Fix AM.revokeUriPermissionFromOwner for prefix mode.
Currently ActivityManager.revokeUriPermissionFromOwner is doing
nothing when called with flags containing
Intent.FLAG_GRANT_PREFIX_URI_PERMISSION.
Bug: 30284061
Change-Id: Iafac98f3eb61a29f56ce274031c01cd555e13063
(cherry picked from commit ff7a500d72fa37ea3e2bf8e1c1908649475e9c2c)
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java
index 59e3096..dca44b4 100644
--- a/services/core/java/com/android/server/am/ActivityManagerService.java
+++ b/services/core/java/com/android/server/am/ActivityManagerService.java
@@ -8607,7 +8607,8 @@
if (uri == null) {
owner.removeUriPermissionsLocked(mode);
} else {
- owner.removeUriPermissionLocked(new GrantUri(userId, uri, false), mode);
+ final boolean prefix = (mode & Intent.FLAG_GRANT_PREFIX_URI_PERMISSION) != 0;
+ owner.removeUriPermissionLocked(new GrantUri(userId, uri, prefix), mode);
}
}
}