diff options
| -rw-r--r-- | services/core/java/com/android/server/ConnectivityService.java | 8 | ||||
| -rw-r--r-- | services/core/java/com/android/server/connectivity/NetworkAgentInfo.java | 3 |
2 files changed, 5 insertions, 6 deletions
diff --git a/services/core/java/com/android/server/ConnectivityService.java b/services/core/java/com/android/server/ConnectivityService.java index 4f7900eefee2..293ab0258074 100644 --- a/services/core/java/com/android/server/ConnectivityService.java +++ b/services/core/java/com/android/server/ConnectivityService.java @@ -5520,7 +5520,6 @@ public class ConnectivityService extends IConnectivityManager.Stub } nai.asyncChannel.connect(mContext, mTrackerHandler, nai.messenger); NetworkInfo networkInfo = nai.networkInfo; - nai.networkInfo = null; updateNetworkInfo(nai, networkInfo); updateUids(nai, null, nai.networkCapabilities); } @@ -6519,8 +6518,7 @@ public class ConnectivityService extends IConnectivityManager.Stub if (DBG) { log(networkAgent.name() + " EVENT_NETWORK_INFO_CHANGED, going from " + - (oldInfo == null ? "null" : oldInfo.getState()) + - " to " + state); + oldInfo.getState() + " to " + state); } if (!networkAgent.created @@ -6593,8 +6591,8 @@ public class ConnectivityService extends IConnectivityManager.Stub // TODO(b/122649188): send the broadcast only to VPN users. mProxyTracker.sendProxyBroadcast(); } - } else if ((oldInfo != null && oldInfo.getState() == NetworkInfo.State.SUSPENDED) || - state == NetworkInfo.State.SUSPENDED) { + } else if (networkAgent.created && (oldInfo.getState() == NetworkInfo.State.SUSPENDED || + state == NetworkInfo.State.SUSPENDED)) { // going into or coming out of SUSPEND: re-score and notify if (networkAgent.getCurrentScore() != oldScore) { rematchAllNetworksAndRequests(networkAgent, oldScore); diff --git a/services/core/java/com/android/server/connectivity/NetworkAgentInfo.java b/services/core/java/com/android/server/connectivity/NetworkAgentInfo.java index 5b043799f848..8d1a802c30d2 100644 --- a/services/core/java/com/android/server/connectivity/NetworkAgentInfo.java +++ b/services/core/java/com/android/server/connectivity/NetworkAgentInfo.java @@ -16,6 +16,7 @@ package com.android.server.connectivity; +import android.annotation.NonNull; import android.content.Context; import android.net.IDnsResolver; import android.net.INetd; @@ -116,7 +117,7 @@ import java.util.TreeSet; // not, ConnectivityService disconnects the NetworkAgent's AsyncChannel. public class NetworkAgentInfo implements Comparable<NetworkAgentInfo> { - public NetworkInfo networkInfo; + @NonNull public NetworkInfo networkInfo; // This Network object should always be used if possible, so as to encourage reuse of the // enclosed socket factory and connection pool. Avoid creating other Network objects. // This Network object is always valid. |