Do not merge: Fix 3G connectivity bug 3513741.

ServiceStateTracker the registerForDataConnectionDetached needed to
test for !STATE_IN_SERVICE so that the other values for state also cause
the detached notifciation.

CdmaServiceStateTracker needed to use the ServiceStateTracker lists
and not the cdma specific lists for registration, which are now deleted.
Also removed an unused import.

CdmaLteServiceStateTracker cannot use the deleted cdma specific
registration lists.

Bug: 3513741
Change-Id: I0939a47251ffc70ea5c9e4675a4b4179d9c718b1
This commit is contained in:
Wink Saville
2011-03-04 22:54:41 -08:00
parent df6542d5ca
commit 9d7d5b4435
3 changed files with 3 additions and 9 deletions

View File

@@ -320,7 +320,7 @@ public abstract class ServiceStateTracker extends Handler {
Registrant r = new Registrant(h, what, obj);
mDetachedRegistrants.add(r);
if (getCurrentDataConnectionState() == ServiceState.STATE_OUT_OF_SERVICE) {
if (getCurrentDataConnectionState() != ServiceState.STATE_IN_SERVICE) {
r.notifyRegistrant();
}
}

View File

@@ -387,12 +387,10 @@ public class CdmaLteServiceStateTracker extends CdmaServiceStateTracker {
}
if (hasCdmaDataConnectionAttached) {
cdmaDataConnectionAttachedRegistrants.notifyRegistrants();
mAttachedRegistrants.notifyRegistrants();
}
if (hasCdmaDataConnectionDetached) {
cdmaDataConnectionDetachedRegistrants.notifyRegistrants();
mDetachedRegistrants.notifyRegistrants();
}

View File

@@ -16,8 +16,6 @@
package com.android.internal.telephony.cdma;
import static com.android.internal.telephony.TelephonyProperties.PROPERTY_ICC_OPERATOR_NUMERIC;
import com.android.internal.telephony.CommandException;
import com.android.internal.telephony.CommandsInterface;
import com.android.internal.telephony.DataConnectionTracker;
@@ -102,8 +100,6 @@ public class CdmaServiceStateTracker extends ServiceStateTracker {
protected int cdmaDataConnectionState = ServiceState.STATE_OUT_OF_SERVICE;
protected int newCdmaDataConnectionState = ServiceState.STATE_OUT_OF_SERVICE;
protected int mRegistrationState = -1;
protected RegistrantList cdmaDataConnectionAttachedRegistrants = new RegistrantList();
protected RegistrantList cdmaDataConnectionDetachedRegistrants = new RegistrantList();
protected RegistrantList cdmaForSubscriptionInfoReadyRegistrants = new RegistrantList();
/**
@@ -1098,11 +1094,11 @@ public class CdmaServiceStateTracker extends ServiceStateTracker {
}
if (hasCdmaDataConnectionAttached) {
cdmaDataConnectionAttachedRegistrants.notifyRegistrants();
mAttachedRegistrants.notifyRegistrants();
}
if (hasCdmaDataConnectionDetached) {
cdmaDataConnectionDetachedRegistrants.notifyRegistrants();
mDetachedRegistrants.notifyRegistrants();
}
if (hasCdmaDataConnectionChanged || hasNetworkTypeChanged) {