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

Commit 8f57caf8 authored by Fabrice Di Meglio's avatar Fabrice Di Meglio
Browse files

Fix bug #2585298 (google calendar sync clears eventTimezone field for recurring allDay events)

- force UTC timezone if recurrence is corresponding to an "allday" event

Change-Id: I3603438c0ad8019051ed4a8bd39d4aa7c0401eb1
parent 0b7d6de1
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -181,7 +181,9 @@ public class RecurrenceSet {
        boolean inUtc = start.parse(dtstart);
        boolean allDay = start.allDay;

        if (inUtc) {
        // We force TimeZone to UTC for "all day recurring events" as the server is sending no
        // TimeZone in DTSTART for them
        if (inUtc || allDay) {
            tzid = Time.TIMEZONE_UTC;
        }
                
+2 −2
Original line number Diff line number Diff line
@@ -46,7 +46,7 @@ public class RecurrenceSetTest extends TestCase {
        String recurrence = "DTSTART;VALUE=DATE:20090821\nDTEND;VALUE=DATE:20090822\n"
                + "RRULE:FREQ=YEARLY;WKST=SU";
        verifyPopulateContentValues(recurrence, "FREQ=YEARLY;WKST=SU", null,
                null, null, 1250812800000L, null, "P1D", 1);
                null, null, 1250812800000L, "UTC", "P1D", 1);
    }

    // Test 2 day all-day event
@@ -55,7 +55,7 @@ public class RecurrenceSetTest extends TestCase {
        String recurrence = "DTSTART;VALUE=DATE:20090821\nDTEND;VALUE=DATE:20090823\n"
                + "RRULE:FREQ=YEARLY;WKST=SU";
        verifyPopulateContentValues(recurrence, "FREQ=YEARLY;WKST=SU", null,
                null, null, 1250812800000L, null,  "P2D", 1);
                null, null, 1250812800000L, "UTC",  "P2D", 1);
    }

    // run populateContentValues and verify the results