DO NOT MERGE. Persistable Uri grants still require permissions.
am: 05519b7e3d
Change-Id: I6d42f089fec6c268b35885d3169644853ab734c5
This commit is contained in:
@@ -8737,10 +8737,17 @@ public class ActivityManagerService extends IActivityManager.Stub
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// If we're extending a persistable grant, then we always need to create
|
// Figure out the value returned when access is allowed
|
||||||
// the grant data structure so that take/release APIs work
|
final int allowedResult;
|
||||||
if ((modeFlags & Intent.FLAG_GRANT_PERSISTABLE_URI_PERMISSION) != 0) {
|
if ((modeFlags & Intent.FLAG_GRANT_PERSISTABLE_URI_PERMISSION) != 0) {
|
||||||
return targetUid;
|
// If we're extending a persistable grant, then we need to return
|
||||||
|
// "targetUid" so that we always create a grant data structure to
|
||||||
|
// support take/release APIs
|
||||||
|
allowedResult = targetUid;
|
||||||
|
} else {
|
||||||
|
// Otherwise, we can return "-1" to indicate that no grant data
|
||||||
|
// structures need to be created
|
||||||
|
allowedResult = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (targetUid >= 0) {
|
if (targetUid >= 0) {
|
||||||
@@ -8749,7 +8756,7 @@ public class ActivityManagerService extends IActivityManager.Stub
|
|||||||
// No need to grant the target this permission.
|
// No need to grant the target this permission.
|
||||||
if (DEBUG_URI_PERMISSION) Slog.v(TAG_URI_PERMISSION,
|
if (DEBUG_URI_PERMISSION) Slog.v(TAG_URI_PERMISSION,
|
||||||
"Target " + targetPkg + " already has full permission to " + grantUri);
|
"Target " + targetPkg + " already has full permission to " + grantUri);
|
||||||
return -1;
|
return allowedResult;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// First... there is no target package, so can anyone access it?
|
// First... there is no target package, so can anyone access it?
|
||||||
@@ -8765,7 +8772,7 @@ public class ActivityManagerService extends IActivityManager.Stub
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (allowed) {
|
if (allowed) {
|
||||||
return -1;
|
return allowedResult;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user