From 40a1a51845d1476b0bd0bd4c8d0e4eaa56bba6b0 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 30 Oct 2012 08:49:02 -0400 Subject: [PATCH] cache the "startDate" --- SOPE/NGCards/iCalTimeZonePeriod.h | 3 +++ SOPE/NGCards/iCalTimeZonePeriod.m | 15 +++++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/SOPE/NGCards/iCalTimeZonePeriod.h b/SOPE/NGCards/iCalTimeZonePeriod.h index ad56ab50a..f4d9af6ce 100644 --- a/SOPE/NGCards/iCalTimeZonePeriod.h +++ b/SOPE/NGCards/iCalTimeZonePeriod.h @@ -30,6 +30,9 @@ @class iCalRecurrenceRule; @interface iCalTimeZonePeriod : CardGroup +{ + NSCalendarDate *startDate; +} - (NSCalendarDate *) startDate; - (iCalRecurrenceRule *) recurrenceRule; diff --git a/SOPE/NGCards/iCalTimeZonePeriod.m b/SOPE/NGCards/iCalTimeZonePeriod.m index ac436f96d..a7e21879a 100644 --- a/SOPE/NGCards/iCalTimeZonePeriod.m +++ b/SOPE/NGCards/iCalTimeZonePeriod.m @@ -103,10 +103,21 @@ // return dayOfWeek; // } +- (void) dealloc +{ + [startDate release]; + [super dealloc]; +} + - (NSCalendarDate *) startDate { - return [(iCalDateTime *) [self uniqueChildWithTag: @"dtstart"] - dateTime]; + if (!startDate) + { + startDate = [(iCalDateTime *) [self uniqueChildWithTag: @"dtstart"] + dateTime]; + [startDate retain]; + } + return startDate; } - (iCalRecurrenceRule *) recurrenceRule