diff options
author | Narayan Kamath <narayan@google.com> | 2016-04-27 15:40:03 +0100 |
---|---|---|
committer | Narayan Kamath <narayan@google.com> | 2016-04-27 16:27:36 +0100 |
commit | 7c335a5d575470ba944cb41d0ac655d7087422d1 (patch) | |
tree | 178d4cb1997922e12027d3e1810f39d958f598ff /bcprov/src/main/java/org/bouncycastle/asn1/cms/Time.java | |
parent | cf7021d93b868e5f72781d0f49b56447fc226639 (diff) | |
download | bouncycastle-7c335a5d575470ba944cb41d0ac655d7087422d1.tar.gz |
ASN1: Use an explicit locale for ASN1 UTC / Generalized times.nougat-dev
Using the default locale can result in bad behaviour, for example
when the locales numberformat doesn't use arabic numerals.
bug: 28384942
Change-Id: I4e240d9710c0427d809410df3a762c80125a821c
Diffstat (limited to 'bcprov/src/main/java/org/bouncycastle/asn1/cms/Time.java')
-rw-r--r-- | bcprov/src/main/java/org/bouncycastle/asn1/cms/Time.java | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/bcprov/src/main/java/org/bouncycastle/asn1/cms/Time.java b/bcprov/src/main/java/org/bouncycastle/asn1/cms/Time.java index 84f12a9c..ed9a6c03 100644 --- a/bcprov/src/main/java/org/bouncycastle/asn1/cms/Time.java +++ b/bcprov/src/main/java/org/bouncycastle/asn1/cms/Time.java @@ -2,6 +2,7 @@ package org.bouncycastle.asn1.cms; import java.text.ParseException; import java.text.SimpleDateFormat; +import java.util.Calendar; import java.util.Date; import java.util.Locale; import java.util.SimpleTimeZone; @@ -70,7 +71,10 @@ public class Time Date time) { SimpleTimeZone tz = new SimpleTimeZone(0, "Z"); - SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss"); + // BEGIN android-changed + // Was: SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss"); + SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss", Locale.US); + // END android-changed dateF.setTimeZone(tz); @@ -101,7 +105,11 @@ public class Time Locale locale) { SimpleTimeZone tz = new SimpleTimeZone(0, "Z"); - SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss", locale); + // BEGIN android-changed + // Was: SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss", locale); + SimpleDateFormat dateF = new SimpleDateFormat("yyyyMMddHHmmss", Locale.US); + dateF.setCalendar(Calendar.getInstance(locale)); + // END android-changed dateF.setTimeZone(tz); |