Handle end of month repeating tasks better

pull/14/head
Sam Bosley 11 years ago
parent bd4348a982
commit 80467c0ca5

@ -156,8 +156,18 @@ public class RepeatTaskCompleteListener extends BroadcastReceiver {
}
private static long handleMonthlyRepeat(Date original, DateValue startDateAsDV, RRule rrule) {
//
return invokeRecurrence(rrule, original, startDateAsDV);
if (DateUtilities.isEndOfMonth(original)) {
Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(original.getTime());
int interval = rrule.getInterval();
cal.add(Calendar.MONTH, interval);
cal.set(Calendar.DATE, cal.getActualMaximum(Calendar.DATE));
return cal.getTimeInMillis();
} else {
return invokeRecurrence(rrule, original, startDateAsDV);
}
}
private static Comparator<WeekdayNum> weekdayCompare = new Comparator<WeekdayNum>() {

Loading…
Cancel
Save