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

Commit bc38add3 authored by Amin Shaikh's avatar Amin Shaikh
Browse files

Fix WifiManager NPEs in CryptKeeper UI.

Ensure systemui can boot when WifiManager is null. This patch merges
go/aog/804695 into internal master.

Change-Id: I7861f9c30f109852bb200bfa17207e74c4b8ac1c
Fixes: 109588864
Test: manual
parent bb9b1957
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -101,6 +101,9 @@ public class WifiStatusTracker extends ConnectivityManager.NetworkCallback {
    }

    public void handleBroadcast(Intent intent) {
        if (mWifiManager == null) {
            return;
        }
        String action = intent.getAction();
        if (action.equals(WifiManager.WIFI_STATE_CHANGED_ACTION)) {
            updateWifiState();
+4 −4
Original line number Diff line number Diff line
@@ -212,7 +212,7 @@ public class WifiTracker implements LifecycleObserver, OnStart, OnStop, OnDestro
        mConnectivityManager = connectivityManager;

        // check if verbose logging developer option has been turned on or off
        sVerboseLogging = (mWifiManager.getVerboseLoggingLevel() > 0);
        sVerboseLogging = mWifiManager != null && (mWifiManager.getVerboseLoggingLevel() > 0);

        mFilter = filter;

@@ -283,7 +283,7 @@ public class WifiTracker implements LifecycleObserver, OnStart, OnStop, OnDestro
            mScanner = new Scanner();
        }

        if (mWifiManager.isWifiEnabled()) {
        if (isWifiEnabled()) {
            mScanner.resume();
        }
    }
@@ -413,7 +413,7 @@ public class WifiTracker implements LifecycleObserver, OnStart, OnStop, OnDestro
    }

    public boolean isWifiEnabled() {
        return mWifiManager.isWifiEnabled();
        return mWifiManager != null && mWifiManager.isWifiEnabled();
    }

    /**
@@ -638,7 +638,7 @@ public class WifiTracker implements LifecycleObserver, OnStart, OnStop, OnDestro
    private void updateNetworkInfo(NetworkInfo networkInfo) {

        /* Sticky broadcasts can call this when wifi is disabled */
        if (!mWifiManager.isWifiEnabled()) {
        if (!isWifiEnabled()) {
            clearAccessPointsAndConditionallyUpdate();
            return;
        }
+3 −0
Original line number Diff line number Diff line
@@ -118,6 +118,9 @@ public class HotspotControllerImpl implements HotspotController, WifiManager.Sof
     * @param shouldListen whether we should start listening to various wifi statuses
     */
    private void updateWifiStateListeners(boolean shouldListen) {
        if (mWifiManager == null) {
            return;
        }
        if (shouldListen) {
            mWifiManager.registerSoftApCallback(
                    this,
+3 −1
Original line number Diff line number Diff line
@@ -53,7 +53,9 @@ public class WifiSignalController extends
                connectivityManager, this::handleStatusUpdated);
        mWifiTracker.setListening(true);
        mHasMobileData = hasMobileData;
        if (wifiManager != null) {
            wifiManager.registerTrafficStateCallback(new WifiTrafficStateCallback(), null);
        }
        // WiFi only has one state.
        mCurrentState.iconGroup = mLastState.iconGroup = new IconGroup(
                "Wi-Fi Icons",