Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e9aa4b27 authored by Wink Saville's avatar Wink Saville Committed by Android (Google) Code Review
Browse files

Merge "Add additional debug for time zone handling." into jb-dev

parents 37e169cd 26e1a02b
Loading
Loading
Loading
Loading
+19 −0
Original line number Original line Diff line number Diff line
@@ -26,6 +26,7 @@ import org.xmlpull.v1.XmlPullParserException;
import java.io.IOException;
import java.io.IOException;
import java.io.PrintWriter;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Collection;
import java.util.Collection;
import java.util.TimeZone;
import java.util.TimeZone;
import java.util.Date;
import java.util.Date;
@@ -381,4 +382,22 @@ public class TimeUtils {
        }
        }
        formatDuration(time-now, pw, 0);
        formatDuration(time-now, pw, 0);
    }
    }

    /**
     * Convert a System.currentTimeMillis() value to a time of day value like
     * that printed in logs. MM-DD HH:MM:SS.MMM
     *
     * @param millis since the epoch (1/1/1970)
     * @return String representation of the time.
     * @hide
     */
    public static String logTimeOfDay(long millis) {
        Calendar c = Calendar.getInstance();
        if (millis >= 0) {
            c.setTimeInMillis(millis);
            return String.format("%tm-%td %tH:%tM:%tS.%tL", c, c, c, c, c, c);
        } else {
            return Long.toString(millis);
        }
    }
}
}
+3 −17
Original line number Original line Diff line number Diff line
@@ -31,6 +31,7 @@ import android.os.AsyncResult;
import android.os.Message;
import android.os.Message;
import android.os.SystemProperties;
import android.os.SystemProperties;
import android.text.TextUtils;
import android.text.TextUtils;
import android.util.TimeUtils;


import java.io.FileDescriptor;
import java.io.FileDescriptor;
import java.io.PrintWriter;
import java.io.PrintWriter;
@@ -1224,21 +1225,6 @@ public abstract class DataConnection extends StateMachine {
        return info;
        return info;
    }
    }


    /**
     * Convert a System.currentTimeMillis() value to a time of day value.
     *
     * @param millis since the epoch (1/1/1970)
     * @return String representation of the time.
     */
    private String timeMillisToTimeOfDay(long millis) {
        Calendar c = Calendar.getInstance();
        if (millis >= 0) {
            c.setTimeInMillis(millis);
            return String.format("%tm-%td %tH:%tM:%tS.%tL", c, c, c, c, c, c);
        } else {
            return Long.toString(millis);
        }
    }
    /**
    /**
     * Dump the current state.
     * Dump the current state.
     *
     *
@@ -1263,8 +1249,8 @@ public abstract class DataConnection extends StateMachine {
        pw.println(" mLinkProperties=" + mLinkProperties);
        pw.println(" mLinkProperties=" + mLinkProperties);
        pw.flush();
        pw.flush();
        pw.println(" mCapabilities=" + mCapabilities);
        pw.println(" mCapabilities=" + mCapabilities);
        pw.println(" createTime=" + timeMillisToTimeOfDay(createTime));
        pw.println(" createTime=" + TimeUtils.logTimeOfDay(createTime));
        pw.println(" lastFailTime=" + timeMillisToTimeOfDay(lastFailTime));
        pw.println(" lastFailTime=" + TimeUtils.logTimeOfDay(lastFailTime));
        pw.println(" lastFailCause=" + lastFailCause);
        pw.println(" lastFailCause=" + lastFailCause);
        pw.flush();
        pw.flush();
        pw.println(" mRetryOverride=" + mRetryOverride);
        pw.println(" mRetryOverride=" + mRetryOverride);
+4 −1
Original line number Original line Diff line number Diff line
@@ -23,6 +23,7 @@ import android.os.Registrant;
import android.os.RegistrantList;
import android.os.RegistrantList;
import android.telephony.ServiceState;
import android.telephony.ServiceState;
import android.telephony.SignalStrength;
import android.telephony.SignalStrength;
import android.util.TimeUtils;


import java.io.FileDescriptor;
import java.io.FileDescriptor;
import java.io.PrintWriter;
import java.io.PrintWriter;
@@ -507,13 +508,15 @@ public abstract class ServiceStateTracker extends Handler {
        // Determine retVal
        // Determine retVal
        boolean retVal = ((iccCardExist && (mcc != prevMcc)) || needToFixTimeZone);
        boolean retVal = ((iccCardExist && (mcc != prevMcc)) || needToFixTimeZone);
        if (DBG) {
        if (DBG) {
            long ctm = System.currentTimeMillis();
            log("shouldFixTimeZoneNow: retVal=" + retVal +
            log("shouldFixTimeZoneNow: retVal=" + retVal +
                    " iccCard=" + iccCard +
                    " iccCard=" + iccCard +
                    " iccCard.state=" + (iccCard == null ? "null" : iccCard.getState().toString()) +
                    " iccCard.state=" + (iccCard == null ? "null" : iccCard.getState().toString()) +
                    " iccCardExist=" + iccCardExist +
                    " iccCardExist=" + iccCardExist +
                    " operatorNumeric=" + operatorNumeric + " mcc=" + mcc +
                    " operatorNumeric=" + operatorNumeric + " mcc=" + mcc +
                    " prevOperatorNumeric=" + prevOperatorNumeric + " prevMcc=" + prevMcc +
                    " prevOperatorNumeric=" + prevOperatorNumeric + " prevMcc=" + prevMcc +
                    " needToFixTimeZone=" + needToFixTimeZone);
                    " needToFixTimeZone=" + needToFixTimeZone +
                    " ltod=" + TimeUtils.logTimeOfDay(ctm));
        }
        }
        return retVal;
        return retVal;
    }
    }
+9 −3
Original line number Original line Diff line number Diff line
@@ -878,13 +878,19 @@ public class CdmaServiceStateTracker extends ServiceStateTracker {
            // For NITZ string without time zone,
            // For NITZ string without time zone,
            // need adjust time to reflect default time zone setting
            // need adjust time to reflect default time zone setting
            zone = TimeZone.getDefault();
            zone = TimeZone.getDefault();
            long tzOffset;
            long ctm = System.currentTimeMillis();
            tzOffset = zone.getOffset(System.currentTimeMillis());
            long tzOffset = zone.getOffset(ctm);
            if (DBG) {
                log("fixTimeZone: tzOffset=" + tzOffset + " ltod=" + TimeUtils.logTimeOfDay(ctm));
            }
            if (getAutoTime()) {
            if (getAutoTime()) {
                setAndBroadcastNetworkSetTime(System.currentTimeMillis() - tzOffset);
                long adj = ctm - tzOffset;
                if (DBG) log("fixTimeZone: adj ltod=" + TimeUtils.logTimeOfDay(adj));
                setAndBroadcastNetworkSetTime(adj);
            } else {
            } else {
                // Adjust the saved NITZ time to account for tzOffset.
                // Adjust the saved NITZ time to account for tzOffset.
                mSavedTime = mSavedTime - tzOffset;
                mSavedTime = mSavedTime - tzOffset;
                if (DBG) log("fixTimeZone: adj mSavedTime=" + mSavedTime);
            }
            }
            if (DBG) log("fixTimeZone: using default TimeZone");
            if (DBG) log("fixTimeZone: using default TimeZone");
        } else if (isoCountryCode.equals("")) {
        } else if (isoCountryCode.equals("")) {
+9 −3
Original line number Original line Diff line number Diff line
@@ -923,10 +923,16 @@ final class GsmServiceStateTracker extends ServiceStateTracker {
                        zone = TimeZone.getDefault();
                        zone = TimeZone.getDefault();
                        // For NITZ string without timezone,
                        // For NITZ string without timezone,
                        // need adjust time to reflect default timezone setting
                        // need adjust time to reflect default timezone setting
                        long tzOffset;
                        long ctm = System.currentTimeMillis();
                        tzOffset = zone.getOffset(System.currentTimeMillis());
                        long tzOffset = zone.getOffset(ctm);
                        if (DBG) {
                            log("pollStateDone: tzOffset=" + tzOffset + " ltod=" +
                                        TimeUtils.logTimeOfDay(ctm));
                        }
                        if (getAutoTime()) {
                        if (getAutoTime()) {
                            setAndBroadcastNetworkSetTime(System.currentTimeMillis() - tzOffset);
                            long adj = ctm - tzOffset;
                            if (DBG) log("pollStateDone: adj ltod=" + TimeUtils.logTimeOfDay(adj));
                            setAndBroadcastNetworkSetTime(adj);
                        } else {
                        } else {
                            // Adjust the saved NITZ time to account for tzOffset.
                            // Adjust the saved NITZ time to account for tzOffset.
                            mSavedTime = mSavedTime - tzOffset;
                            mSavedTime = mSavedTime - tzOffset;