Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Citharel <tcit@tcit.fr>2022-04-27 18:17:22 +0300
committerThomas Citharel <tcit@tcit.fr>2022-04-27 18:17:22 +0300
commit5494dd736ddac312154f1a43f449f849cd39b2f2 (patch)
tree81fba221ec30572b876d760f59970fa40b065f08
parent20d7bf8a880ddf41874afdaf3784d29bc1bc925d (diff)
Handle processing reminders for calendar objects with an infinite numberhandle-calendar-reminders-with-infinite-recurrence
of recurrences Closes #29896 Signed-off-by: Thomas Citharel <tcit@tcit.fr>
-rw-r--r--apps/dav/lib/CalDAV/Reminder/ReminderService.php5
1 files changed, 5 insertions, 0 deletions
diff --git a/apps/dav/lib/CalDAV/Reminder/ReminderService.php b/apps/dav/lib/CalDAV/Reminder/ReminderService.php
index d6901cc4fb0..b33bc8a175a 100644
--- a/apps/dav/lib/CalDAV/Reminder/ReminderService.php
+++ b/apps/dav/lib/CalDAV/Reminder/ReminderService.php
@@ -44,6 +44,7 @@ use Sabre\VObject\Component\VEvent;
use Sabre\VObject\InvalidDataException;
use Sabre\VObject\ParseException;
use Sabre\VObject\Recur\EventIterator;
+use Sabre\VObject\Recur\MaxInstancesExceededException;
use Sabre\VObject\Recur\NoInstancesException;
use function strcasecmp;
@@ -247,6 +248,10 @@ class ReminderService {
// instance. We are skipping this event from the output
// entirely.
return;
+ } catch (MaxInstancesExceededException $e) {
+ // The event has more than 3500 recurring-instances
+ // so we can ignore it
+ return;
}
while ($iterator->valid() && count($processedAlarms) < count($masterAlarms)) {