Merge "Use IntentFilter CREATOR directly for serializing ParsedIntentInfo" into rvc-dev am: a29bdb9e0d

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15110948

Change-Id: I562f314aa64840d256b5e4e62b0903ca32025b88
This commit is contained in:
TreeHugger Robot
2021-06-29 21:53:13 +00:00
committed by Automerger Merge Worker

View File

@@ -14252,9 +14252,15 @@ public class PackageManagerService extends IPackageManager.Stub
return new ParceledListSlice<IntentFilter>(result) {
@Override
protected void writeElement(IntentFilter parcelable, Parcel dest, int callFlags) {
// IntentFilter has final Parcelable methods, so redirect to the subclass
((ParsedIntentInfo) parcelable).writeIntentInfoToParcel(dest,
callFlags);
parcelable.writeToParcel(dest, callFlags);
}
@Override
protected void writeParcelableCreator(IntentFilter parcelable, Parcel dest) {
// All Parcel#writeParcelableCreator does is serialize the class name to
// access via reflection to grab its CREATOR. This does that manually, pointing
// to the parent IntentFilter so that all of the subclass fields are ignored.
dest.writeString(IntentFilter.class.getName());
}
};
}