aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJessica Wagantall <jwagantall@cyngn.com>2016-08-02 11:02:19 -0700
committerJessica Wagantall <jwagantall@cyngn.com>2016-08-02 11:37:46 -0700
commitd8208c31aba11194a73f0a664f2e7f2d1cbefd07 (patch)
treecef5021c7af2afa262dbb9b7ee69aec1d83974dd
parent4b479deb9b4a8673bc34424f532628ebf39d0eb9 (diff)
parentf47bc301ccbc5e6d8110afab5a1e9bac1d4ef058 (diff)
downloadandroid_frameworks_opt_telephony-d8208c31aba11194a73f0a664f2e7f2d1cbefd07.tar.gz
android_frameworks_opt_telephony-d8208c31aba11194a73f0a664f2e7f2d1cbefd07.tar.bz2
android_frameworks_opt_telephony-d8208c31aba11194a73f0a664f2e7f2d1cbefd07.zip
Merge tag 'android-6.0.1_r61' into HEAD
Android 6.0.1 Release 61 (MOB30Z) Change-Id: I1579189596cf269ec8c80b7efb006711ae2236a9
-rw-r--r--src/java/com/android/internal/telephony/cdma/CdmaServiceStateTracker.java6
-rw-r--r--src/java/com/android/internal/telephony/gsm/GsmServiceStateTracker.java6
2 files changed, 12 insertions, 0 deletions
diff --git a/src/java/com/android/internal/telephony/cdma/CdmaServiceStateTracker.java b/src/java/com/android/internal/telephony/cdma/CdmaServiceStateTracker.java
index 0c38e279d..c68c6380a 100644
--- a/src/java/com/android/internal/telephony/cdma/CdmaServiceStateTracker.java
+++ b/src/java/com/android/internal/telephony/cdma/CdmaServiceStateTracker.java
@@ -102,6 +102,8 @@ public class CdmaServiceStateTracker extends ServiceStateTracker {
private static final int NITZ_UPDATE_DIFF_DEFAULT = 2000;
private int mNitzUpdateDiff = SystemProperties.getInt("ro.nitz_update_diff",
NITZ_UPDATE_DIFF_DEFAULT);
+ /** Time stamp after 19 January 2038 is not supported under 32 bit */
+ private static final int MAX_NITZ_YEAR = 2037;
private int mRoamingIndicator;
private boolean mIsInPrl;
@@ -1639,6 +1641,10 @@ public class CdmaServiceStateTracker extends ServiceStateTracker {
String[] nitzSubs = nitz.split("[/:,+-]");
int year = 2000 + Integer.parseInt(nitzSubs[0]);
+ if (year > MAX_NITZ_YEAR) {
+ if (DBG) loge("NITZ year: " + year + " exceeds limit, skip NITZ time update");
+ return;
+ }
c.set(Calendar.YEAR, year);
// month is 0 based!
diff --git a/src/java/com/android/internal/telephony/gsm/GsmServiceStateTracker.java b/src/java/com/android/internal/telephony/gsm/GsmServiceStateTracker.java
index 995c64bb5..24eea4903 100644
--- a/src/java/com/android/internal/telephony/gsm/GsmServiceStateTracker.java
+++ b/src/java/com/android/internal/telephony/gsm/GsmServiceStateTracker.java
@@ -141,6 +141,8 @@ public class GsmServiceStateTracker extends ServiceStateTracker {
/** Boolean is true is setTimeFromNITZString was called */
private boolean mNitzUpdatedTime = false;
+ /** Time stamp after 19 January 2038 is not supported under 32 bit */
+ private static final int MAX_NITZ_YEAR = 2037;
String mSavedTimeZone;
long mSavedTime;
@@ -1826,6 +1828,10 @@ public class GsmServiceStateTracker extends ServiceStateTracker {
String[] nitzSubs = nitz.split("[/:,+-]");
int year = 2000 + Integer.parseInt(nitzSubs[0]);
+ if (year > MAX_NITZ_YEAR) {
+ if (DBG) loge("NITZ year: " + year + " exceeds limit, skip NITZ time update");
+ return;
+ }
c.set(Calendar.YEAR, year);
// month is 0 based!