diff --git a/src/main/java/org/olat/commons/calendar/CalendarUtils.java b/src/main/java/org/olat/commons/calendar/CalendarUtils.java index 88d2c45ccc58c29275c83ac2a5430ab4a2a9c32c..4ba4ceb9d4241bb5b8fe5086a59159e2ef6db3b1 100644 --- a/src/main/java/org/olat/commons/calendar/CalendarUtils.java +++ b/src/main/java/org/olat/commons/calendar/CalendarUtils.java @@ -265,7 +265,9 @@ public class CalendarUtils { for ( KalendarRecurEvent recurEvent : lstEvnt ) { periodEvents.add(recurEvent); } - if (event.getEnd().before(periodStart) || event.getBegin().after(periodEnd)) continue; + if ((event.getEnd() != null && event.getEnd().before(periodStart)) || event.getBegin().after(periodEnd)) { + continue; + } periodEvents.add(event); } return periodEvents; diff --git a/src/test/java/org/olat/commons/calendar/ICalFileCalendarManagerTest.java b/src/test/java/org/olat/commons/calendar/ICalFileCalendarManagerTest.java index 0cd0c3f29297c09b3466a171d9183f9a2fdea279..53f4ddba35dcbaf81cd075ee71fbe1dc251bd254 100644 --- a/src/test/java/org/olat/commons/calendar/ICalFileCalendarManagerTest.java +++ b/src/test/java/org/olat/commons/calendar/ICalFileCalendarManagerTest.java @@ -123,6 +123,11 @@ public class ICalFileCalendarManagerTest extends OlatTestCase { //persist calManager.persistCalendar(reloadCalWrapper.getKalendar()); + + //an other possible RS + Date periodStart = new Date(); + Date periodEnd = new Date(); + CalendarUtils.listEventsForPeriod(reloadCalWrapper.getKalendar(), periodStart, periodEnd); } /**