From e6a9bcb7e8280512b0f68230fb72a004f86c8ae1 Mon Sep 17 00:00:00 2001 From: Wink Saville Date: Sat, 15 Aug 2009 11:15:26 -0700 Subject: [PATCH] A hack that when restartRadio is called the CdmaDataConnectionTracker to retry a connection and possibly reconnect after a temporary data loss. The root cause appears to be because DEACTIVATE and POWER_RADIO_OFF are sent back to back and POWER_RADIO_OFF completes before DEACTIVATE. When this happens CdmaDataConnectionTracker won't attempt to reestablish a data connection until a voice call terminates. At this time it appears the better solution is have CdmaDataConnectionTracker wait for DEACTIVATE to complete before issuing POWER_RADIO_OFF, this fix will be implemented in the near future. --- .../internal/telephony/cdma/CdmaDataConnectionTracker.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/telephony/java/com/android/internal/telephony/cdma/CdmaDataConnectionTracker.java b/telephony/java/com/android/internal/telephony/cdma/CdmaDataConnectionTracker.java index 33cbbd7af80ff..8e87587769734 100644 --- a/telephony/java/com/android/internal/telephony/cdma/CdmaDataConnectionTracker.java +++ b/telephony/java/com/android/internal/telephony/cdma/CdmaDataConnectionTracker.java @@ -498,7 +498,7 @@ public final class CdmaDataConnectionTracker extends DataConnectionTracker { protected void restartRadio() { Log.d(LOG_TAG, "************TURN OFF RADIO**************"); - cleanUpConnection(true, Phone.REASON_RADIO_TURNED_OFF); + cleanUpConnection(true, Phone.REASON_CDMA_DATA_DETACHED); phone.mCM.setRadioPower(false, null); /* Note: no need to call setRadioPower(true). Assuming the desired * radio power state is still ON (as tracked by ServiceStateTracker),