From 78a640af951377d9749d0dbfd027687cbb92dc72 Mon Sep 17 00:00:00 2001 From: Robert Greenwalt Date: Wed, 10 Mar 2010 16:10:43 -0800 Subject: [PATCH] Make HiPri work when already connected. A recent change made the HiPri MobileDataStateTracker listen for notifications about the default connection (which HiPri shadows). Local code was sending itself a notification using the old HiPri badging instead of the new Default badging and those notifications where therefore ignored. Manifested itself on HiPri connections when we were already on 3g. See change 42422 on master platform/frameworks/base for the change this is completing. Change-Id: I375026048724d0035297287c61c6c2f58d4e0294 --- core/java/android/net/MobileDataStateTracker.java | 2 +- services/java/com/android/server/ConnectivityService.java | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/core/java/android/net/MobileDataStateTracker.java b/core/java/android/net/MobileDataStateTracker.java index b59e2791e757f..17b0330ed8c38 100644 --- a/core/java/android/net/MobileDataStateTracker.java +++ b/core/java/android/net/MobileDataStateTracker.java @@ -346,7 +346,7 @@ public class MobileDataStateTracker extends NetworkStateTracker { ACTION_ANY_DATA_CONNECTION_STATE_CHANGED); intent.putExtra(Phone.STATE_KEY, Phone.DataState.CONNECTED.toString()); intent.putExtra(Phone.STATE_CHANGE_REASON_KEY, Phone.REASON_APN_CHANGED); - intent.putExtra(Phone.DATA_APN_TYPES_KEY, mApnType); + intent.putExtra(Phone.DATA_APN_TYPES_KEY, mApnTypeToWatchFor); intent.putExtra(Phone.DATA_APN_KEY, mApnName); intent.putExtra(Phone.DATA_IFACE_NAME_KEY, mInterfaceName); intent.putExtra(Phone.NETWORK_UNAVAILABLE_KEY, false); diff --git a/services/java/com/android/server/ConnectivityService.java b/services/java/com/android/server/ConnectivityService.java index 70deb3edddf43..fa0624413c792 100644 --- a/services/java/com/android/server/ConnectivityService.java +++ b/services/java/com/android/server/ConnectivityService.java @@ -668,6 +668,7 @@ public class ConnectivityService extends IConnectivityManager.Stub { synchronized(this) { // check if this process still has an outstanding start request if (!mFeatureUsers.contains(u)) { + if (DBG) Slog.d(TAG, "ignoring - this process has no outstanding requests"); return 1; } u.unlinkDeathRecipient(); @@ -706,6 +707,7 @@ public class ConnectivityService extends IConnectivityManager.Stub { } tracker = mNetTrackers[usedNetworkType]; if (tracker == null) { + if (DBG) Slog.d(TAG, "ignoring - no known tracker for net type " + usedNetworkType); return -1; } if (usedNetworkType != networkType) { @@ -720,7 +722,7 @@ public class ConnectivityService extends IConnectivityManager.Stub { callTeardown = true; } } - + if (DBG) Slog.d(TAG, "Doing network teardown"); if (callTeardown) { tracker.teardown(); return 1;