Skip to content

Commit ec94472

Browse files
Simon WilsonAndroid (Google) Code Review
authored andcommitted
Merge "DO NOT MERGE Disable WiMAX when "Data Enabled" is off" into gingerbread
2 parents 8b312c6 + 8a7fc0a commit ec94472

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

services/java/com/android/server/ConnectivityService.java

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -391,6 +391,10 @@ private ConnectivityService(Context context) {
391391
nst.startMonitoring();
392392
}
393393
mNetTrackers[netType] = nst;
394+
if (noMobileData) {
395+
if (DBG) Slog.d(TAG, "tearing down WiMAX networks due to setting");
396+
mNetTrackers[netType].teardown();
397+
}
394398
break;
395399
default:
396400
Slog.e(TAG, "Trying to create a DataStateTracker for an unknown radio type " +
@@ -987,6 +991,12 @@ private void handleSetMobileData(boolean enabled) {
987991
}
988992
mNetTrackers[ConnectivityManager.TYPE_MOBILE].reconnect();
989993
}
994+
if (mNetTrackers[ConnectivityManager.TYPE_WIMAX] != null) {
995+
if (DBG) {
996+
Slog.d(TAG, "starting up " + mNetTrackers[ConnectivityManager.TYPE_WIMAX]);
997+
}
998+
mNetTrackers[ConnectivityManager.TYPE_WIMAX].reconnect();
999+
}
9901000
} else {
9911001
for (NetworkStateTracker nt : mNetTrackers) {
9921002
if (nt == null) continue;
@@ -996,6 +1006,9 @@ private void handleSetMobileData(boolean enabled) {
9961006
nt.teardown();
9971007
}
9981008
}
1009+
if (mNetTrackers[ConnectivityManager.TYPE_WIMAX] != null) {
1010+
mNetTrackers[ConnectivityManager.TYPE_WIMAX].teardown();
1011+
}
9991012
}
10001013
}
10011014

@@ -1124,6 +1137,12 @@ private void tryFailover(int prevNetType) {
11241137
" because Mobile Data Disabled");
11251138
continue;
11261139
}
1140+
if (mNetAttributes[checkType].mRadio == ConnectivityManager.TYPE_WIMAX &&
1141+
noMobileData) {
1142+
Slog.e(TAG, "not failing over to mobile type " + checkType +
1143+
" because Mobile Data Disabled");
1144+
continue;
1145+
}
11271146
NetworkStateTracker checkTracker = mNetTrackers[checkType];
11281147
NetworkInfo checkInfo = checkTracker.getNetworkInfo();
11291148
if (!checkInfo.isConnectedOrConnecting() || checkTracker.isTeardownRequested()) {

0 commit comments

Comments
 (0)