Correct an error code to pass CTS.
We used to report an unmatch stopUsingNetworkFeature call with an "ok, stopped" response,
but we need to report it as an error.
bug:3281837
Change-Id: I35728159e62a021cb10de4396b3f60a92df0570f
diff --git a/services/java/com/android/server/ConnectivityService.java b/services/java/com/android/server/ConnectivityService.java
index 9d11d87..f82a243 100644
--- a/services/java/com/android/server/ConnectivityService.java
+++ b/services/java/com/android/server/ConnectivityService.java
@@ -698,9 +698,8 @@
}
NetworkStateTracker network = mNetTrackers[usedNetworkType];
if (network != null) {
+ Integer currentPid = new Integer(getCallingPid());
if (usedNetworkType != networkType) {
- Integer currentPid = new Integer(getCallingPid());
-
NetworkStateTracker radio = mNetTrackers[networkType];
NetworkInfo ni = network.getNetworkInfo();
@@ -739,6 +738,14 @@
network.reconnect();
return Phone.APN_REQUEST_STARTED;
} else {
+ // need to remember this unsupported request so we respond appropriately on stop
+ synchronized(this) {
+ mFeatureUsers.add(f);
+ if (!mNetRequestersPids[usedNetworkType].contains(currentPid)) {
+ // this gets used for per-pid dns when connected
+ mNetRequestersPids[usedNetworkType].add(currentPid);
+ }
+ }
return -1;
}
}