From 35d1a8477114c55779148f46d64300e95b63060d Mon Sep 17 00:00:00 2001 From: Andrei Onea Date: Thu, 24 Jun 2021 13:30:06 +0000 Subject: [PATCH] Fix nullpointer exception in CompatConfig The override config parser in CompatConfig will sometimes return a null config (if the config is empty or malformed). Bug: 188732264 Test: device boots Change-Id: Ic52ad9d2e440e5551abb5e8399d97a8ca0fc42a1 --- .../core/java/com/android/server/compat/CompatConfig.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/services/core/java/com/android/server/compat/CompatConfig.java b/services/core/java/com/android/server/compat/CompatConfig.java index 6dca00191b24d..0e63952b9c836 100644 --- a/services/core/java/com/android/server/compat/CompatConfig.java +++ b/services/core/java/com/android/server/compat/CompatConfig.java @@ -603,6 +603,10 @@ final class CompatConfig { try (InputStream in = new BufferedInputStream(new FileInputStream(overridesFile))) { Overrides overrides = com.android.server.compat.overrides.XmlParser.read(in); + if (overrides == null) { + Slog.w(TAG, "Parsing " + overridesFile.getPath() + " failed"); + return; + } for (ChangeOverrides changeOverrides : overrides.getChangeOverrides()) { long changeId = changeOverrides.getChangeId(); CompatChange compatChange = mChanges.get(changeId);