Merge "Add a null check for the result of nullable API." into udc-dev am: 93b38f5b31
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/23566543 Change-Id: Iebd0073b622d4bbf3cc72e9d83d42c5b28e906d4 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -3714,11 +3714,16 @@ public final class Settings implements Watchable, Snappable, ResilientAtomicFile
|
|||||||
if (parser.getName().equals(TAG_PERMISSIONS)) {
|
if (parser.getName().equals(TAG_PERMISSIONS)) {
|
||||||
final LegacyPermissionState legacyState;
|
final LegacyPermissionState legacyState;
|
||||||
if (ps.hasSharedUser()) {
|
if (ps.hasSharedUser()) {
|
||||||
legacyState = getSettingLPr(ps.getSharedUserAppId()).getLegacyPermissionState();
|
final SettingBase sharedUserSettings = getSettingLPr(
|
||||||
|
ps.getSharedUserAppId());
|
||||||
|
legacyState = sharedUserSettings != null
|
||||||
|
? sharedUserSettings.getLegacyPermissionState() : null;
|
||||||
} else {
|
} else {
|
||||||
legacyState = ps.getLegacyPermissionState();
|
legacyState = ps.getLegacyPermissionState();
|
||||||
}
|
}
|
||||||
|
if (legacyState != null) {
|
||||||
readInstallPermissionsLPr(parser, legacyState, users);
|
readInstallPermissionsLPr(parser, legacyState, users);
|
||||||
|
}
|
||||||
} else if (parser.getName().equals(TAG_USES_STATIC_LIB)) {
|
} else if (parser.getName().equals(TAG_USES_STATIC_LIB)) {
|
||||||
readUsesStaticLibLPw(parser, ps);
|
readUsesStaticLibLPw(parser, ps);
|
||||||
} else if (parser.getName().equals(TAG_USES_SDK_LIB)) {
|
} else if (parser.getName().equals(TAG_USES_SDK_LIB)) {
|
||||||
|
|||||||
@@ -141,6 +141,7 @@ import com.android.server.pm.parsing.pkg.AndroidPackageUtils;
|
|||||||
import com.android.server.pm.pkg.AndroidPackage;
|
import com.android.server.pm.pkg.AndroidPackage;
|
||||||
import com.android.server.pm.pkg.PackageState;
|
import com.android.server.pm.pkg.PackageState;
|
||||||
import com.android.server.pm.pkg.PackageStateInternal;
|
import com.android.server.pm.pkg.PackageStateInternal;
|
||||||
|
import com.android.server.pm.pkg.SharedUserApi;
|
||||||
import com.android.server.pm.pkg.component.ComponentMutateUtils;
|
import com.android.server.pm.pkg.component.ComponentMutateUtils;
|
||||||
import com.android.server.pm.pkg.component.ParsedPermission;
|
import com.android.server.pm.pkg.component.ParsedPermission;
|
||||||
import com.android.server.pm.pkg.component.ParsedPermissionGroup;
|
import com.android.server.pm.pkg.component.ParsedPermissionGroup;
|
||||||
@@ -4538,8 +4539,13 @@ public class PermissionManagerServiceImpl implements PermissionManagerServiceInt
|
|||||||
final int appId = ps.getAppId();
|
final int appId = ps.getAppId();
|
||||||
final LegacyPermissionState legacyState;
|
final LegacyPermissionState legacyState;
|
||||||
if (ps.hasSharedUser()) {
|
if (ps.hasSharedUser()) {
|
||||||
legacyState = mPackageManagerInt.getSharedUserApi(
|
final int sharedUserId = ps.getSharedUserAppId();
|
||||||
ps.getSharedUserAppId()).getSharedUserLegacyPermissionState();
|
SharedUserApi sharedUserApi = mPackageManagerInt.getSharedUserApi(sharedUserId);
|
||||||
|
if (sharedUserApi == null) {
|
||||||
|
Slog.wtf(TAG, "Missing shared user Api for " + sharedUserId);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
legacyState = sharedUserApi.getSharedUserLegacyPermissionState();
|
||||||
} else {
|
} else {
|
||||||
legacyState = ps.getLegacyPermissionState();
|
legacyState = ps.getLegacyPermissionState();
|
||||||
}
|
}
|
||||||
@@ -4584,8 +4590,13 @@ public class PermissionManagerServiceImpl implements PermissionManagerServiceInt
|
|||||||
ps.setInstallPermissionsFixed(false);
|
ps.setInstallPermissionsFixed(false);
|
||||||
final LegacyPermissionState legacyState;
|
final LegacyPermissionState legacyState;
|
||||||
if (ps.hasSharedUser()) {
|
if (ps.hasSharedUser()) {
|
||||||
legacyState = mPackageManagerInt.getSharedUserApi(
|
final int sharedUserId = ps.getSharedUserAppId();
|
||||||
ps.getSharedUserAppId()).getSharedUserLegacyPermissionState();
|
SharedUserApi sharedUserApi = mPackageManagerInt.getSharedUserApi(sharedUserId);
|
||||||
|
if (sharedUserApi == null) {
|
||||||
|
Slog.wtf(TAG, "Missing shared user Api for " + sharedUserId);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
legacyState = sharedUserApi.getSharedUserLegacyPermissionState();
|
||||||
} else {
|
} else {
|
||||||
legacyState = ps.getLegacyPermissionState();
|
legacyState = ps.getLegacyPermissionState();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user