Merge "Simplify unregister logic for Connectivity Diagnostics callbacks."
This commit is contained in:
@@ -7883,12 +7883,14 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||||||
ensureRunningOnConnectivityServiceThread();
|
ensureRunningOnConnectivityServiceThread();
|
||||||
final IBinder iCb = cb.asBinder();
|
final IBinder iCb = cb.asBinder();
|
||||||
|
|
||||||
if (!mConnectivityDiagnosticsCallbacks.containsKey(iCb)) {
|
final ConnectivityDiagnosticsCallbackInfo cbInfo =
|
||||||
|
mConnectivityDiagnosticsCallbacks.remove(iCb);
|
||||||
|
if (cbInfo == null) {
|
||||||
if (VDBG) log("Removing diagnostics callback that is not currently registered");
|
if (VDBG) log("Removing diagnostics callback that is not currently registered");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
final NetworkRequestInfo nri = mConnectivityDiagnosticsCallbacks.get(iCb).mRequestInfo;
|
final NetworkRequestInfo nri = cbInfo.mRequestInfo;
|
||||||
|
|
||||||
if (uid != nri.mUid) {
|
if (uid != nri.mUid) {
|
||||||
if (VDBG) loge("Different uid than registrant attempting to unregister cb");
|
if (VDBG) loge("Different uid than registrant attempting to unregister cb");
|
||||||
@@ -7900,8 +7902,6 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||||||
// enforceRequestCountLimit().
|
// enforceRequestCountLimit().
|
||||||
decrementNetworkRequestPerUidCount(nri);
|
decrementNetworkRequestPerUidCount(nri);
|
||||||
|
|
||||||
final ConnectivityDiagnosticsCallbackInfo cbInfo =
|
|
||||||
mConnectivityDiagnosticsCallbacks.remove(iCb);
|
|
||||||
iCb.unlinkToDeath(cbInfo, 0);
|
iCb.unlinkToDeath(cbInfo, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user