From e6b129c8ebdbd8be6b51cd76f69514aeceab2165 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Thu, 3 Nov 2016 15:26:38 -0400 Subject: [PATCH] Fix condition in weekly recurrence calculator --- NEWS | 1 + SOPE/NGCards/iCalDailyRecurrenceCalculator.m | 3 +-- SOPE/NGCards/iCalWeeklyRecurrenceCalculator.m | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/NEWS b/NEWS index 01d1ad76e..1b7319729 100644 --- a/NEWS +++ b/NEWS @@ -9,6 +9,7 @@ Enhancements Bug fixes - [web] fixed mail settings persistence when sorting by arrival date + - [core] fixed condition in weekly recurrence calculator 3.2.1 (2016-11-02) ------------------ diff --git a/SOPE/NGCards/iCalDailyRecurrenceCalculator.m b/SOPE/NGCards/iCalDailyRecurrenceCalculator.m index 79b73ca16..8626359f6 100644 --- a/SOPE/NGCards/iCalDailyRecurrenceCalculator.m +++ b/SOPE/NGCards/iCalDailyRecurrenceCalculator.m @@ -160,8 +160,7 @@ { r = [NGCalendarDateRange calendarDateRangeWithStartDate: currentStartDate endDate: currentEndDate]; - if ([_r containsDateRange: r] || [_r doesIntersectWithDateRange: r]) - [ranges addObject: r]; + [ranges addObject: r]; } } } diff --git a/SOPE/NGCards/iCalWeeklyRecurrenceCalculator.m b/SOPE/NGCards/iCalWeeklyRecurrenceCalculator.m index e646bfbcf..f1ecfae1c 100644 --- a/SOPE/NGCards/iCalWeeklyRecurrenceCalculator.m +++ b/SOPE/NGCards/iCalWeeklyRecurrenceCalculator.m @@ -125,16 +125,16 @@ while ([currentStartDate compare: endDate] == NSOrderedAscending || [currentStartDate compare: endDate] == NSOrderedSame) { + currentEndDate = [currentStartDate addTimeInterval: [firstRange duration]]; if ([startDate compare: currentStartDate] == NSOrderedAscending || - [startDate compare: currentStartDate] == NSOrderedSame) + [startDate compare: currentStartDate] == NSOrderedSame || + [startDate compare: currentEndDate] == NSOrderedAscending) { NGCalendarDateRange *r; - currentEndDate = [currentStartDate addTimeInterval: [firstRange duration]]; r = [NGCalendarDateRange calendarDateRangeWithStartDate: currentStartDate endDate: currentEndDate]; - if ([_r containsDateRange: r]) - [ranges addObject: r]; + [ranges addObject: r]; } i++; currentStartDate = [firStart dateByAddingYears: 0