From 177a7200ab28c9ad7a29a7aa3609f90e52a1e86f Mon Sep 17 00:00:00 2001 From: liulvping Date: Tue, 18 May 2021 04:48:19 +0000 Subject: [PATCH] Reset target sdk version of ParseTypeImpl In device booting, PackageParser2 uses a thread local ParseTypeImpl obj as shared result and reset it before parsing everty time. But it doesn't reset the target sdk version, which could make deferError returned unexpected error, cause apk scaned failed and deleted by the system. Bug: 188523844 Test: atest com.android.server.pm.parsing Signed-off-by: liulvping Merged-In: Ie6fbc4b79e94943c9282206b1ef6d20b4129fa0b Change-Id: Ie6fbc4b79e94943c9282206b1ef6d20b4129fa0b --- core/java/android/content/pm/parsing/result/ParseTypeImpl.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/core/java/android/content/pm/parsing/result/ParseTypeImpl.java b/core/java/android/content/pm/parsing/result/ParseTypeImpl.java index 0f90b53719654..7ac78b7c6a242 100644 --- a/core/java/android/content/pm/parsing/result/ParseTypeImpl.java +++ b/core/java/android/content/pm/parsing/result/ParseTypeImpl.java @@ -119,6 +119,8 @@ public class ParseTypeImpl implements ParseInput, ParseResult { // how many APKs they're going through. mDeferredErrors.erase(); } + mPackageName = null; + mTargetSdkVersion = null; return this; }