Merge "Check NetworkAgentInfo Map Before Destroying Network" am: 9d31c63e03
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1802528 Change-Id: Ibcf989ffd494108faeeb4419041fb32389208c4d
This commit is contained in:
commit
8c06f9991b
1 changed files with 5 additions and 4 deletions
|
|
@ -3856,9 +3856,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||
|
||||
private void handleNetworkAgentDisconnected(Message msg) {
|
||||
NetworkAgentInfo nai = (NetworkAgentInfo) msg.obj;
|
||||
if (mNetworkAgentInfos.contains(nai)) {
|
||||
disconnectAndDestroyNetwork(nai);
|
||||
}
|
||||
disconnectAndDestroyNetwork(nai);
|
||||
}
|
||||
|
||||
// Destroys a network, remove references to it from the internal state managed by
|
||||
|
|
@ -3866,6 +3864,9 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||
// Must be called on the Handler thread.
|
||||
private void disconnectAndDestroyNetwork(NetworkAgentInfo nai) {
|
||||
ensureRunningOnConnectivityServiceThread();
|
||||
|
||||
if (!mNetworkAgentInfos.contains(nai)) return;
|
||||
|
||||
if (DBG) {
|
||||
log(nai.toShortString() + " disconnected, was satisfying " + nai.numNetworkRequests());
|
||||
}
|
||||
|
|
@ -3951,7 +3952,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||
try {
|
||||
mNetd.networkSetPermissionForNetwork(nai.network.netId, INetd.PERMISSION_SYSTEM);
|
||||
} catch (RemoteException e) {
|
||||
Log.d(TAG, "Error marking network restricted during teardown: " + e);
|
||||
Log.d(TAG, "Error marking network restricted during teardown: ", e);
|
||||
}
|
||||
mHandler.postDelayed(() -> destroyNetwork(nai), nai.teardownDelayMs);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue