diff options
author | Linux Build Service Account <lnxbuild@localhost> | 2014-05-22 21:46:26 -0700 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2014-05-22 21:46:26 -0700 |
commit | 07764c73d587c35456f5e4870b6773bd153686f6 (patch) | |
tree | 23b3ff7ea5bba9bae6b87102fdd844fd3902a7ee | |
parent | 08b0fd2e20812e94dd243898874a60353a5f8e03 (diff) | |
parent | cc2d9f93d0d4d3d2445af73fe1c130471e44e7ac (diff) | |
download | android_frameworks_opt_telephony-07764c73d587c35456f5e4870b6773bd153686f6.tar.gz android_frameworks_opt_telephony-07764c73d587c35456f5e4870b6773bd153686f6.tar.bz2 android_frameworks_opt_telephony-07764c73d587c35456f5e4870b6773bd153686f6.zip |
Merge "Merge ac1a392a43d5423af37aa15fc9785828f21b467a on remote branch"
4 files changed, 24 insertions, 10 deletions
diff --git a/src/java/com/android/internal/telephony/cat/CommandParamsFactory.java b/src/java/com/android/internal/telephony/cat/CommandParamsFactory.java index 63beb800a..a8fa174b7 100755 --- a/src/java/com/android/internal/telephony/cat/CommandParamsFactory.java +++ b/src/java/com/android/internal/telephony/cat/CommandParamsFactory.java @@ -860,6 +860,10 @@ public class CommandParamsFactory extends Handler { ctlv = searchForTag(ComprehensionTlvTag.ALPHA_ID, ctlvs); if (ctlv != null) { textMsg.text = ValueParser.retrieveAlphaId(ctlv); + // Assign the tone message text to empty string, if alpha identifier + // data is null. If no alpha identifier tlv is present, then tone + // message text will be null. + if (textMsg.text == null) textMsg.text = ""; } // parse tone duration ctlv = searchForTag(ComprehensionTlvTag.DURATION, ctlvs); diff --git a/src/java/com/android/internal/telephony/cdma/CdmaLteServiceStateTracker.java b/src/java/com/android/internal/telephony/cdma/CdmaLteServiceStateTracker.java index 72d2c7572..7f64bf598 100644 --- a/src/java/com/android/internal/telephony/cdma/CdmaLteServiceStateTracker.java +++ b/src/java/com/android/internal/telephony/cdma/CdmaLteServiceStateTracker.java @@ -208,8 +208,6 @@ public class CdmaLteServiceStateTracker extends CdmaServiceStateTracker { + " dataRadioTechnology=" + type); } mDataRoaming = regCodeIsRoaming(regState); - - if (mDataRoaming) mNewSS.setRoaming(true); } else { super.handlePollStateResultMessage(what, ar); } @@ -327,6 +325,8 @@ public class CdmaLteServiceStateTracker extends CdmaServiceStateTracker { ((mNewSS.getRilDataRadioTechnology() >= ServiceState.RIL_RADIO_TECHNOLOGY_IS95A) && (mNewSS.getRilDataRadioTechnology() <= ServiceState.RIL_RADIO_TECHNOLOGY_EVDO_A)); + boolean needNotifyData = (mSS.getCssIndicator() != mNewSS.getCssIndicator()); + if (DBG) { log("pollStateDone:" + " hasRegistered=" + hasRegistered @@ -486,11 +486,16 @@ public class CdmaLteServiceStateTracker extends CdmaServiceStateTracker { //DCT shall inform the availability of APN for all non-default //contexts. mIwlanRegistrants.notifyRegistrants(); + needNotifyData = false; } else { - mPhone.notifyDataConnection(null); + needNotifyData = true; } } + if (needNotifyData) { + mPhone.notifyDataConnection(null); + } + if (hasCdmaDataConnectionAttached || has4gHandoff) { mAttachedRegistrants.notifyRegistrants(); } diff --git a/src/java/com/android/internal/telephony/cdma/CdmaServiceStateTracker.java b/src/java/com/android/internal/telephony/cdma/CdmaServiceStateTracker.java index 20bf3ca15..b945951d2 100644 --- a/src/java/com/android/internal/telephony/cdma/CdmaServiceStateTracker.java +++ b/src/java/com/android/internal/telephony/cdma/CdmaServiceStateTracker.java @@ -676,13 +676,9 @@ public class CdmaServiceStateTracker extends ServiceStateTracker { // When registration state is roaming and TSB58 // roaming indicator is not in the carrier-specified // list of ERIs for home system, mCdmaRoaming is true. - mCdmaRoaming = - regCodeIsRoaming(registrationState) && !isRoamIndForHomeSystem(states[10]); - mCdmaRoaming = mCdmaRoaming || mDataRoaming; + mCdmaRoaming = regCodeIsRoaming(registrationState); mNewSS.setState (regCodeToServiceState(registrationState)); - mNewSS.setRilVoiceRadioTechnology(radioTechnology); - mNewSS.setCssIndicator(cssIndicator); mNewSS.setSystemAndNetworkId(systemId, networkId); mRoamingIndicator = roamingIndicator; @@ -786,7 +782,9 @@ public class CdmaServiceStateTracker extends ServiceStateTracker { if (!isSidsAllZeros() && isHomeSid(mNewSS.getSystemId())) { namMatch = true; } - + mCdmaRoaming = + (mCdmaRoaming || mDataRoaming) && + !isRoamIndForHomeSystem(String.valueOf(mRoamingIndicator)); // Setting SS Roaming (general) if (mIsSubscriptionFromRuim) { mNewSS.setRoaming(isRoamingBetweenOperators(mCdmaRoaming, mNewSS)); diff --git a/src/java/com/android/internal/telephony/gsm/GsmServiceStateTracker.java b/src/java/com/android/internal/telephony/gsm/GsmServiceStateTracker.java index e4cce643a..78d334fda 100644 --- a/src/java/com/android/internal/telephony/gsm/GsmServiceStateTracker.java +++ b/src/java/com/android/internal/telephony/gsm/GsmServiceStateTracker.java @@ -933,6 +933,8 @@ public class GsmServiceStateTracker extends ServiceStateTracker { boolean hasLocationChanged = !mNewCellLoc.equals(mCellLoc); + boolean needNotifyData = (mSS.getCssIndicator() != mNewSS.getCssIndicator()); + // Add an event log when connection state changes if (hasVoiceRegStateChanged || hasDataRegStateChanged) { EventLog.writeEvent(EventLogTags.GSM_SERVICE_STATE_CHANGE, @@ -1157,11 +1159,16 @@ public class GsmServiceStateTracker extends ServiceStateTracker { //DCT shall inform the availability of APN for all non-default //contexts. mIwlanRegistrants.notifyRegistrants(); + needNotifyData = false; } else { - mPhone.notifyDataConnection(null); + needNotifyData = true; } } + if (needNotifyData) { + mPhone.notifyDataConnection(null); + } + if (hasGprsAttached) { mAttachedRegistrants.notifyRegistrants(); } |