Handle null packageName in PendingIntentRecord
Bug: 27896795 Change-Id: If187e4c9cf4e5a0461f207fd8c8576bcfa559999
This commit is contained in:
@@ -38,6 +38,7 @@ import com.android.server.am.ActivityStackSupervisor.ActivityContainer;
|
|||||||
|
|
||||||
import java.io.PrintWriter;
|
import java.io.PrintWriter;
|
||||||
import java.lang.ref.WeakReference;
|
import java.lang.ref.WeakReference;
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
final class PendingIntentRecord extends IIntentSender.Stub {
|
final class PendingIntentRecord extends IIntentSender.Stub {
|
||||||
private static final String TAG = TAG_WITH_CLASS_NAME ? "PendingIntentRecord" : TAG_AM;
|
private static final String TAG = TAG_WITH_CLASS_NAME ? "PendingIntentRecord" : TAG_AM;
|
||||||
@@ -102,7 +103,7 @@ final class PendingIntentRecord extends IIntentSender.Stub {
|
|||||||
if (requestResolvedType != null) {
|
if (requestResolvedType != null) {
|
||||||
hash = (ODD_PRIME_NUMBER*hash) + requestResolvedType.hashCode();
|
hash = (ODD_PRIME_NUMBER*hash) + requestResolvedType.hashCode();
|
||||||
}
|
}
|
||||||
hash = (ODD_PRIME_NUMBER*hash) + _p.hashCode();
|
hash = (ODD_PRIME_NUMBER*hash) + (_p != null ? _p.hashCode() : 0);
|
||||||
hash = (ODD_PRIME_NUMBER*hash) + _t;
|
hash = (ODD_PRIME_NUMBER*hash) + _t;
|
||||||
hashCode = hash;
|
hashCode = hash;
|
||||||
//Slog.i(ActivityManagerService.TAG, this + " hashCode=0x"
|
//Slog.i(ActivityManagerService.TAG, this + " hashCode=0x"
|
||||||
@@ -121,20 +122,14 @@ final class PendingIntentRecord extends IIntentSender.Stub {
|
|||||||
if (userId != other.userId){
|
if (userId != other.userId){
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (!packageName.equals(other.packageName)) {
|
if (!Objects.equals(packageName, other.packageName)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (activity != other.activity) {
|
if (activity != other.activity) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (who != other.who) {
|
if (!Objects.equals(who, other.who)) {
|
||||||
if (who != null) {
|
return false;
|
||||||
if (!who.equals(other.who)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
} else if (other.who != null) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (requestCode != other.requestCode) {
|
if (requestCode != other.requestCode) {
|
||||||
return false;
|
return false;
|
||||||
@@ -148,14 +143,8 @@ final class PendingIntentRecord extends IIntentSender.Stub {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (requestResolvedType != other.requestResolvedType) {
|
if (!Objects.equals(requestResolvedType, other.requestResolvedType)) {
|
||||||
if (requestResolvedType != null) {
|
return false;
|
||||||
if (!requestResolvedType.equals(other.requestResolvedType)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
} else if (other.requestResolvedType != null) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (flags != other.flags) {
|
if (flags != other.flags) {
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
Reference in New Issue
Block a user