From 2f583ee73ad82890f050a7948a2b89aa6c863e5d Mon Sep 17 00:00:00 2001 From: Caitlin Cassidy Date: Wed, 16 Jun 2021 15:17:43 +0000 Subject: [PATCH] [Status Bar] Fix NPE in #dumpBarTransitions. Test: atest Fixes: 190927484 Change-Id: I7b0962b1240fde81c256f93a9aec479205f47101 --- .../com/android/systemui/statusbar/phone/StatusBar.java | 9 +++++++-- .../android/systemui/statusbar/phone/StatusBarTest.java | 6 ++++++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java index 2eece18709af3..dc0d69e51bafa 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java @@ -2778,9 +2778,14 @@ public class StatusBar extends SystemUI implements DemoMode, + String.valueOf(CameraIntents.getOverrideCameraPackage(mContext))); } - public static void dumpBarTransitions(PrintWriter pw, String var, BarTransitions transitions) { + public static void dumpBarTransitions( + PrintWriter pw, String var, @Nullable BarTransitions transitions) { pw.print(" "); pw.print(var); pw.print(".BarTransitions.mMode="); - pw.println(BarTransitions.modeToString(transitions.getMode())); + if (transitions != null) { + pw.println(BarTransitions.modeToString(transitions.getMode())); + } else { + pw.println("Unknown"); + } } public void createAndAddWindows(@Nullable RegisterStatusBarResult result) { diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarTest.java index deff2043f6dc6..6d904244bfb63 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarTest.java @@ -776,6 +776,12 @@ public class StatusBarTest extends SysuiTestCase { mStatusBar.dump(null, new PrintWriter(new ByteArrayOutputStream()), null); } + @Test + public void testDumpBarTransitions_DoesNotCrash() { + StatusBar.dumpBarTransitions( + new PrintWriter(new ByteArrayOutputStream()), "var", /* transitions= */ null); + } + @Test @RunWithLooper(setAsMainLooper = true) public void testUpdateKeyguardState_DoesNotCrash() {