Skip to content
Commit fd53e576 authored by Ashok Mutyala's avatar Ashok Mutyala Committed by Chilun
Browse files

Avoid the scenario where Contexts list filled with null value in ShowAnrDialogs()

Problem: Framework Reboot i.e., NullPointer Exception in android.ui Thread
E AndroidRuntime: FATAL EXCEPTION IN SYSTEM PROCESS: android.ui
E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method
'java.lang.Object android.content.Context.getSystemService(java.lang.String)' on a null object reference

E AndroidRuntime: **at android.app.Dialog.<init>(Dialog.java:199)
E AndroidRuntime: **at android.app.AlertDialog.<init>(AlertDialog.java:204)
E AndroidRuntime: **at android.app.AlertDialog.<init>(AlertDialog.java:200)
E AndroidRuntime: **at com.android.server.am.BaseErrorDialog.<init>(BaseErrorDialog.java:39)
E AndroidRuntime: **at com.android.server.am.AppNotRespondingDialog.<init>(AppNotRespondingDialog.java:53)
E AndroidRuntime: **at com.android.server.am.ErrorDialogController.showAnrDialogs(ErrorDialogController.java:183)
E AndroidRuntime: **at com.android.server.am.AppErrors.handleShowAnrUi(AppErrors.java:1077)

Analysis:
As Context Object is passed from showAnrDialogs method and will be retrieved from getDisplayContextWithErrorDialogs
And list of context objects will be filled by querying from RootWindowContainer.getDisplayUiContext and this method is
Annotated with Nullable. So, the possibility could be null value filled in the context object List.

Bug: 196189977
Bug: 200337305
Test: Stability Test

Original Change-Id: Ib944fc5ffc8bcca999c75f99d462d441e555fcda
Change-Id: I28bf8de72b4f6bce9210bb29fde2b3d989911c0e
(cherry picked from commit 25b5d20a)
parent 8b701b08
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment