diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index eb84e181a8858..2a08c340bb3a1 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -4417,9 +4417,7 @@ public class PackageManagerService extends IPackageManager.Stub { synchronized(mPackages) { CrossProfileDomainInfo xpDomainInfo = getCrossProfileDomainPreferredLpr( intent, resolvedType, 0, sourceUserId, parent.id); - return xpDomainInfo != null - && xpDomainInfo.bestDomainVerificationStatus != - INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_NEVER; + return xpDomainInfo != null; } } return false; @@ -4576,6 +4574,11 @@ public class PackageManagerService extends IPackageManager.Stub { result.bestDomainVerificationStatus); } } + // Don't consider matches with status NEVER across profiles. + if (result != null && result.bestDomainVerificationStatus + == INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_NEVER) { + return null; + } return result; }