From 599cd14925e0d0c7698ac19c952014c7fde187bf Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 30 Dec 2008 20:20:41 +0000 Subject: [PATCH] Monotone-Parent: 34b0098e2e34111ae63e0f056fceabfd7cb1362e Monotone-Revision: 22aa1cec549d6f3ee5d911534369beaf41910226 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2008-12-30T20:20:41 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 7 +++++++ UI/Scheduler/UIxCalListingActions.m | 10 ++++++++-- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 2c0094e50..338b3fad3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2008-12-30 Wolfgang Sourdeau + + * UI/Scheduler/UIxCalListingActions.m ([UIxCalListingActions + -eventsBlocksAction]): fixed a crash occuring in the rare + situation where an event end date would be inferior than its start + date. + 2008-12-23 Ludovic Marcotte * SoObjects/Appointments/SOGoAppointmentFolder.{h,m} diff --git a/UI/Scheduler/UIxCalListingActions.m b/UI/Scheduler/UIxCalListingActions.m index a0751c4f5..3ef5c0eea 100644 --- a/UI/Scheduler/UIxCalListingActions.m +++ b/UI/Scheduler/UIxCalListingActions.m @@ -371,8 +371,14 @@ static inline void _feedBlockWithDayBasedData(NSMutableDictionary *block, unsigned int start, unsigned int end, unsigned int dayStart) { - unsigned int delta, quarterStart, length; - + unsigned int delta, quarterStart, length, swap; + + if (start > end) + { + swap = end; + end = start; + start = swap; + } quarterStart = (start - dayStart) / quarterLength; delta = end - dayStart; if ((delta % quarterLength))