Loading services/core/java/com/android/server/ConnectivityService.java +24 −20 Original line number Diff line number Diff line Loading @@ -2445,13 +2445,9 @@ public class ConnectivityService extends IConnectivityManager.Stub } mNetworkRequestInfoLogs.log("RELEASE " + nri); if (nri.request.isRequest()) { // Find all networks that are satisfying this request and remove the request // from their request lists. // TODO - it's my understanding that for a request there is only a single // network satisfying it, so this loop is wasteful boolean wasKept = false; for (NetworkAgentInfo nai : mNetworkAgentInfos.values()) { if (nai.isSatisfyingRequest(nri.request.requestId)) { NetworkAgentInfo nai = mNetworkForRequestId.get(nri.request.requestId); if (nai != null) { nai.removeRequest(nri.request.requestId); if (VDBG) { log(" Removing from current network " + nai.name() + Loading @@ -2461,17 +2457,25 @@ public class ConnectivityService extends IConnectivityManager.Stub if (DBG) log("no live requests for " + nai.name() + "; disconnecting"); teardownUnneededNetwork(nai); } else { // suspect there should only be one pass through here // but if any were kept do the check below wasKept |= true; } wasKept = true; } mNetworkForRequestId.remove(nri.request.requestId); } NetworkAgentInfo nai = mNetworkForRequestId.get(nri.request.requestId); if (nai != null) { mNetworkForRequestId.remove(nri.request.requestId); // TODO: remove this code once we know that the Slog.wtf is never hit. // // Find all networks that are satisfying this request and remove the request // from their request lists. // TODO - it's my understanding that for a request there is only a single // network satisfying it, so this loop is wasteful for (NetworkAgentInfo otherNai : mNetworkAgentInfos.values()) { if (otherNai.isSatisfyingRequest(nri.request.requestId) && otherNai != nai) { Slog.wtf(TAG, "Request " + nri.request + " satisfied by " + otherNai.name() + ", but mNetworkAgentInfos says " + (nai != null ? nai.name() : "null")); } } // Maintain the illusion. When this request arrived, we might have pretended // that a network connected to serve it, even though the network was already // connected. Now that this request has gone away, we might have to pretend Loading Loading
services/core/java/com/android/server/ConnectivityService.java +24 −20 Original line number Diff line number Diff line Loading @@ -2445,13 +2445,9 @@ public class ConnectivityService extends IConnectivityManager.Stub } mNetworkRequestInfoLogs.log("RELEASE " + nri); if (nri.request.isRequest()) { // Find all networks that are satisfying this request and remove the request // from their request lists. // TODO - it's my understanding that for a request there is only a single // network satisfying it, so this loop is wasteful boolean wasKept = false; for (NetworkAgentInfo nai : mNetworkAgentInfos.values()) { if (nai.isSatisfyingRequest(nri.request.requestId)) { NetworkAgentInfo nai = mNetworkForRequestId.get(nri.request.requestId); if (nai != null) { nai.removeRequest(nri.request.requestId); if (VDBG) { log(" Removing from current network " + nai.name() + Loading @@ -2461,17 +2457,25 @@ public class ConnectivityService extends IConnectivityManager.Stub if (DBG) log("no live requests for " + nai.name() + "; disconnecting"); teardownUnneededNetwork(nai); } else { // suspect there should only be one pass through here // but if any were kept do the check below wasKept |= true; } wasKept = true; } mNetworkForRequestId.remove(nri.request.requestId); } NetworkAgentInfo nai = mNetworkForRequestId.get(nri.request.requestId); if (nai != null) { mNetworkForRequestId.remove(nri.request.requestId); // TODO: remove this code once we know that the Slog.wtf is never hit. // // Find all networks that are satisfying this request and remove the request // from their request lists. // TODO - it's my understanding that for a request there is only a single // network satisfying it, so this loop is wasteful for (NetworkAgentInfo otherNai : mNetworkAgentInfos.values()) { if (otherNai.isSatisfyingRequest(nri.request.requestId) && otherNai != nai) { Slog.wtf(TAG, "Request " + nri.request + " satisfied by " + otherNai.name() + ", but mNetworkAgentInfos says " + (nai != null ? nai.name() : "null")); } } // Maintain the illusion. When this request arrived, we might have pretended // that a network connected to serve it, even though the network was already // connected. Now that this request has gone away, we might have to pretend Loading