iCal 3.0.4 misinterpreting BYMONTH+BYDAY recurrence rule

Originator:meissnem
Number:rdar://6082854 Date Originated:17-Jul-2008 08:54 AM
Status:Closed Resolved:true
Product: Product Version:
Classification: Reproducible:
 
Summary:
Given an RRULE with both BYMONTHDAY and BYDAY keywords, iCal displays the recurring event on all days specified by the BYMONTHDAY clause without considering the BYDAY clause. 

For example, attached is a .ics file containing an event representing Grandparents' Day.  It falls on the first Sunday after Labor Day in September, so that works out to the Sunday that falls between the dates September 7 and September 13.  So the RRULE looks like this:
    RRULE:FREQ=YEARLY;INTERVAL=1;BYMONTH=9;BYMONTHDAY=7,8,9,10,11,12,13;BYDAY=SU

This rule represents exactly one day per year.

Steps to Reproduce:
1.  Import a .ics files containing an appointment with both BYMONTHDAY and BYDAY keywords in the RRULE for a particular event (see attachment)

Expected Results:
iCal should display the event exactly once per year, on the Sunday occurring between September 7 and September 13.  (9/7/2008, for example).

Actual Results:
iCal displays the event seven times per year, on the dates September 7-September 13.

Regression:
None

Notes:
For comparison:
Sunbird 0.8 on Mac OS X: displays the attached .ics file correctly -- once per year.
Google Calendar: displays the attached .ics file correctly -- once per year.

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!