Loading core/java/android/provider/Downloads.java +2 −0 Original line number Diff line number Diff line Loading @@ -41,6 +41,8 @@ public final class Downloads { public static final class Impl implements BaseColumns { private Impl() {} public static final String AUTHORITY = "downloads"; /** * The permission to access the download manager */ Loading services/core/java/com/android/server/am/ActivityManagerService.java +7 −0 Original line number Diff line number Diff line Loading @@ -189,6 +189,7 @@ import android.os.UpdateLock; import android.os.UserHandle; import android.os.UserManager; import android.os.WorkSource; import android.provider.Downloads; import android.os.storage.IMountService; import android.os.storage.MountServiceInternal; import android.os.storage.StorageManager; Loading Loading @@ -8510,6 +8511,12 @@ public final class ActivityManagerService extends ActivityManagerNative // Only inspect grants matching package if (packageName == null || perm.sourcePkg.equals(packageName) || perm.targetPkg.equals(packageName)) { // Hacky solution as part of fixing a security bug; ignore // grants associated with DownloadManager so we don't have // to immediately launch it to regrant the permissions if (Downloads.Impl.AUTHORITY.equals(perm.uri.uri.getAuthority()) && !persistable) continue; persistChanged |= perm.revokeModes(persistable ? ~0 : ~Intent.FLAG_GRANT_PERSISTABLE_URI_PERMISSION, true); Loading Loading
core/java/android/provider/Downloads.java +2 −0 Original line number Diff line number Diff line Loading @@ -41,6 +41,8 @@ public final class Downloads { public static final class Impl implements BaseColumns { private Impl() {} public static final String AUTHORITY = "downloads"; /** * The permission to access the download manager */ Loading
services/core/java/com/android/server/am/ActivityManagerService.java +7 −0 Original line number Diff line number Diff line Loading @@ -189,6 +189,7 @@ import android.os.UpdateLock; import android.os.UserHandle; import android.os.UserManager; import android.os.WorkSource; import android.provider.Downloads; import android.os.storage.IMountService; import android.os.storage.MountServiceInternal; import android.os.storage.StorageManager; Loading Loading @@ -8510,6 +8511,12 @@ public final class ActivityManagerService extends ActivityManagerNative // Only inspect grants matching package if (packageName == null || perm.sourcePkg.equals(packageName) || perm.targetPkg.equals(packageName)) { // Hacky solution as part of fixing a security bug; ignore // grants associated with DownloadManager so we don't have // to immediately launch it to regrant the permissions if (Downloads.Impl.AUTHORITY.equals(perm.uri.uri.getAuthority()) && !persistable) continue; persistChanged |= perm.revokeModes(persistable ? ~0 : ~Intent.FLAG_GRANT_PERSISTABLE_URI_PERMISSION, true); Loading