After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 499180 - BYDAY and BYMONTHDAY combination show to many entries
BYDAY and BYMONTHDAY combination show to many entries
Status: RESOLVED FIXED
Product: evolution
Classification: Applications
Component: Calendar
2.22.x (obsolete)
Other All
: Normal normal
: ---
Assigned To: Milan Crha
Evolution QA team
Depends on:
Blocks:
 
 
Reported: 2007-11-23 13:44 UTC by Stefan
Modified: 2009-10-15 14:24 UTC
See Also:
GNOME target: ---
GNOME version: 2.21/2.22


Attachments
proposed eds patch (1.45 KB, patch)
2009-09-21 17:25 UTC, Milan Crha
committed Details | Review

Description Stefan 2007-11-23 13:44:06 UTC
Please describe the problem:
if a remote iCalendar file contains an event with a RRULE which has BYDAY and BYMONTHDAY, the OR of both and not the AND is dispayed.

Steps to reproduce:
1. create an iCalendar file which contains at least the following event:

BEGIN:VEVENT
UID:789846-4792384-423-def
SUMMARY:Jeune genevois
DTSTART;VALUE=DATE:19900906
CATEGORIES:Holiday
RRULE:FREQ=YEARLY;BYMONTH=9;BYDAY=TH;BYMONTHDAY=5,6,7,8,9,10,11
END:VEVENT

2. load the file in evolution

3. check any September from 1991 on (eg 2007) 



Actual results:
the event shows up on all Thursdays and on the days 5 to 11

Expected results:
the event should only show up on the Thursday in the interval 5 to 11

Does this happen every time?
Yes

Other information:
Comment 1 Sebastien Bacher 2008-08-12 08:29:20 UTC
there is a bug similar on https://bugs.launchpad.net/evolution/+bug/207708

"try to import the attached file file as ical in evolution

this is the recurrency rule
RRULE:FREQ=YEARLY;INTERVAL=1;BYMONTH=12;BYDAY=SU;BYMONTHDAY=18,19,20,21,22,23,24

which accordingly to http://www.kanzaki.com/docs/ical/rrule.html (also tested in google calendar) means:
every year, in december, on sunday, if the day of the month is one of 18,19,20,21,22,23,24

evolution interpretes this as a wired thing putting lots of events:
the event is put on 21,22,23,24,28 december

http://launchpadlibrarian.net/12920189/test.ics

the Hardy version which is 2.22.0-0ubuntu2"
Comment 2 Milan Crha 2009-09-21 17:25:13 UTC
Created attachment 143620 [details] [review]
proposed eds patch

for evolution-data-server;

Instead of merging two arrays use their intersection.
Comment 3 Milan Crha 2009-10-15 14:24:15 UTC
Created commit 22af109 in eds master (2.29.1+)