am 0070ee42: am 5381e4ef: Merge "Refine fix I53e91db7 to apply only to wifi network" into eclair

Merge commit '0070ee42201c3d1c005828234ece3e25e620dcc9'

* commit '0070ee42201c3d1c005828234ece3e25e620dcc9':
  Refine fix I53e91db7 to apply only to wifi network
diff --git a/services/java/com/android/server/ConnectivityService.java b/services/java/com/android/server/ConnectivityService.java
index 4417d7b..0aad056 100644
--- a/services/java/com/android/server/ConnectivityService.java
+++ b/services/java/com/android/server/ConnectivityService.java
@@ -1280,9 +1280,16 @@
                     info = (NetworkInfo) msg.obj;
                     int type = info.getType();
                     NetworkInfo.State state = info.getState();
-                    if (mNetAttributes[type].mLastState == state) {
+                    // only do this optimization for wifi.  It going into scan mode for location
+                    // services generates alot of noise.  Meanwhile the mms apn won't send out
+                    // subsequent notifications when on default cellular because it never
+                    // disconnects..  so only do this to wifi notifications.  Fixed better when the
+                    // APN notifications are standardized.
+                    if (mNetAttributes[type].mLastState == state &&
+                            mNetAttributes[type].mRadio == ConnectivityManager.TYPE_WIFI) {
                         if (DBG) {
-                            // TODO - remove this after we validate the dropping doesn't break anything
+                            // TODO - remove this after we validate the dropping doesn't break
+                            // anything
                             Log.d(TAG, "Dropping ConnectivityChange for " +
                                     info.getTypeName() + ": " +
                                     state + "/" + info.getDetailedState());