From 405a0e5bfa0f79bcd5ea064e282a5bbd7cf81e34 Mon Sep 17 00:00:00 2001 From: Jeongeun Song Date: Wed, 31 May 2023 17:03:06 +0900 Subject: [PATCH] Handle ArrayIndexOutOfBoundsException for install_sessions.xml When install_sessions.xml is corrupted, ArrayIndexOutOfBoundsException was thrown. It causes booting failure so catch it. Bug: 269072872 Test: Corrupt install_sessions.xml and reboot Change-Id: I99324e91a2da13bc86d62086aead40cc16cac60b Merged-In: I99324e91a2da13bc86d62086aead40cc16cac60b --- .../java/com/android/server/pm/PackageInstallerService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/pm/PackageInstallerService.java b/services/core/java/com/android/server/pm/PackageInstallerService.java index 02cf4336b2772..3036e0b06495f 100644 --- a/services/core/java/com/android/server/pm/PackageInstallerService.java +++ b/services/core/java/com/android/server/pm/PackageInstallerService.java @@ -482,7 +482,7 @@ public class PackageInstallerService extends IPackageInstaller.Stub implements } } catch (FileNotFoundException e) { // Missing sessions are okay, probably first boot - } catch (IOException | XmlPullParserException e) { + } catch (IOException | XmlPullParserException | ArrayIndexOutOfBoundsException e) { Slog.wtf(TAG, "Failed reading install sessions", e); } finally { IoUtils.closeQuietly(fis);