aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlice Yang <alice@google.com>2012-05-16 09:58:47 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2012-05-16 09:58:47 -0700
commit2e791103db86702c9a43cee1913644a05e987ec7 (patch)
treefab60242264e667240b20dbcca32b3e5ffda54b9
parentd02edb9626e01113d80cd1584e5a96e18418352a (diff)
parenta991358d94947cc0dbd6a8d75dd77b5fd377734b (diff)
downloadcalendar-2e791103db86702c9a43cee1913644a05e987ec7.tar.gz
am a991358d: Allow ";;"
* commit 'a991358d94947cc0dbd6a8d75dd77b5fd377734b': Allow ";;"
-rw-r--r--src/com/android/calendarcommon/EventRecurrence.java4
-rw-r--r--tests/src/com/android/calendarcommon/EventRecurrenceTest.java5
2 files changed, 9 insertions, 0 deletions
diff --git a/src/com/android/calendarcommon/EventRecurrence.java b/src/com/android/calendarcommon/EventRecurrence.java
index cf2b410..ac03e45 100644
--- a/src/com/android/calendarcommon/EventRecurrence.java
+++ b/src/com/android/calendarcommon/EventRecurrence.java
@@ -598,6 +598,10 @@ public class EventRecurrence {
parts = recur.split(";");
}
for (String part : parts) {
+ // allow empty part (e.g., double semicolon ";;")
+ if (TextUtils.isEmpty(part)) {
+ continue;
+ }
int equalIndex = part.indexOf('=');
if (equalIndex <= 0) {
/* no '=' or no LHS */
diff --git a/tests/src/com/android/calendarcommon/EventRecurrenceTest.java b/tests/src/com/android/calendarcommon/EventRecurrenceTest.java
index a058adf..efd5f1c 100644
--- a/tests/src/com/android/calendarcommon/EventRecurrenceTest.java
+++ b/tests/src/com/android/calendarcommon/EventRecurrenceTest.java
@@ -843,6 +843,11 @@ public class EventRecurrenceTest extends TestCase {
"INTERVAL=4;FREQ=YEARLY",
"FREQ=DAILY;X-WHATEVER=blah",
//"freq=daily;wkst=su", // mixed case currently not allowed
+ "FREQ=WEEKLY;INTERVAL=2;BYDAY=Mo;;UNTIL=20120327T000000Z", // double simicolon should be allowed
+ "FREQ=MONTHLY;BYDAY=1Mo",
+ "FREQ=MONTHLY;BYDAY=2Mo,2We,4Mo,4We",
+ "FREQ=MONTHLY;WKST=SU;BYMONTHDAY=25;UNTIL=20110524",
+ "FREQ=WEEKLY;BYDAY=MO;WKST=SU;UNTIL=20111218T010000Z"
};
/** The parser must reject these. */