Merge "Fix UserHandle.getAppIdFromSharedAppGid to allow system UIDs" into mnc-dev

This commit is contained in:
Adam Lesinski
2015-08-14 19:38:34 +00:00
committed by Android (Google) Code Review

View File

@@ -179,16 +179,16 @@ public final class UserHandle implements Parcelable {
}
/**
* Returns the app id for a given shared app gid.
* Returns the app id for a given shared app gid. Returns -1 if the ID is invalid.
* @hide
*/
public static final int getAppIdFromSharedAppGid(int gid) {
final int noUserGid = getAppId(gid);
if (noUserGid < Process.FIRST_SHARED_APPLICATION_GID ||
noUserGid > Process.LAST_SHARED_APPLICATION_GID) {
throw new IllegalArgumentException(Integer.toString(gid) + " is not a shared app gid");
final int appId = getAppId(gid) + Process.FIRST_APPLICATION_UID
- Process.FIRST_SHARED_APPLICATION_GID;
if (appId < 0 || appId >= Process.FIRST_SHARED_APPLICATION_GID) {
return -1;
}
return (noUserGid + Process.FIRST_APPLICATION_UID) - Process.FIRST_SHARED_APPLICATION_GID;
return appId;
}
/**