From 52e795deebe1c17575363ee554d15e4840b5628d Mon Sep 17 00:00:00 2001 From: Junyu Lai Date: Tue, 9 Apr 2019 08:59:00 -0700 Subject: [PATCH] Fix onBlockedStatusChanged does not work on multiple networks There is a logic error in maybeNotifyNetworkBlockedForNewUidRules that caused function to return if there is no status change in the first network. This would cause CTS failed in devices which has volte-enabled SIM inserted. Bug: 129409153 Fix: 117969394 Test: 1. atest com.android.cts.net.HostsideNetworkCallbackTests \ --generate-new-metrics 20 2. atest FrameworksNetTests Change-Id: I11168fd07a7c29e0605f2e874e9d9f41b5ad88b6 Merged-In: Ifd18d1c6ad708c1dbc793f03d8241f572af50317 (cherry picked from commit 6d3a92f7c27518a6206f18fd7ee1ccdb527d6581) --- services/core/java/com/android/server/ConnectivityService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/ConnectivityService.java b/services/core/java/com/android/server/ConnectivityService.java index 57de67e1a3..f5490d777e 100644 --- a/services/core/java/com/android/server/ConnectivityService.java +++ b/services/core/java/com/android/server/ConnectivityService.java @@ -6543,7 +6543,7 @@ public class ConnectivityService extends IConnectivityManager.Stub uid, newRules, metered, mRestrictBackground); } if (oldBlocked == newBlocked) { - return; + continue; } final int arg = encodeBool(newBlocked); for (int i = 0; i < nai.numNetworkRequests(); i++) {