Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fc32f968 authored by huiyu's avatar huiyu
Browse files

Null check on BroadcastRecord's receivers list.

Bug: 227729678
Test: adb shell "am broadcast -a android.intent.action.BOOT_COMPLETED -n com.android.providers.media/.MediaScannerReceiver"
Change-Id: If3c74a11ba76fa025a8dff0a7fc807e4bfa86119
parent 8629d70a
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -580,6 +580,11 @@ public class BroadcastDispatcher {
    // ----------------------------------
    // BroadcastQueue operation support
    void enqueueOrderedBroadcastLocked(BroadcastRecord r) {
        if (r.receivers == null || r.receivers.isEmpty()) {
            mOrderedBroadcasts.add(r);
            return;
        }

        if (Intent.ACTION_LOCKED_BOOT_COMPLETED.equals(r.intent.getAction())) {
            // Create one BroadcastRecord for each UID that can be deferred.
            final SparseArray<BroadcastRecord> deferred =
+4 −0
Original line number Diff line number Diff line
@@ -414,6 +414,10 @@ final class BroadcastRecord extends Binder {
            return ret;
        }

        if (receivers == null) {
            return ret;
        }

        final String action = intent.getAction();
        if (!Intent.ACTION_LOCKED_BOOT_COMPLETED.equals(action)
                && !Intent.ACTION_BOOT_COMPLETED.equals(action)) {