diff options
| author | 2021-06-24 13:30:06 +0000 | |
|---|---|---|
| committer | 2021-06-24 14:56:44 +0000 | |
| commit | 35d1a8477114c55779148f46d64300e95b63060d (patch) | |
| tree | efe827f874dced9b968b9035cbc061f0103c7a5d | |
| parent | 3d44d6ed952eb4d440d7f21e75a571bc5c913fb2 (diff) | |
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
| -rw-r--r-- | services/core/java/com/android/server/compat/CompatConfig.java | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/compat/CompatConfig.java b/services/core/java/com/android/server/compat/CompatConfig.java index 6dca00191b24..0e63952b9c83 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); |