Closed Bug 462048 Opened 11 years ago Closed 11 years ago

Monthly recurrence rule "Last Day Of Month" breaks Custom Recurrence Dialog upon editing

Categories

(Calendar :: General, defect)

defect
Not set

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: ssitter, Assigned: martinschroeder)

Details

Attachments

(1 file)

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1b2pre) Gecko/20081028 Calendar/1.0pre (BuildID: 20081028033243)

Monthly recurrence rule "Last Day Of Month" breaks Custom Recurrence Dialog upon editing

Steps to Reproduce:
===================
1. Start Sunbird with clean profile
2. Switch to Month view and select the last day of the month (31-Oct-2008)
3. Create new event make it repeat Monthly, Last Day of the month
4. Save and close the event
5. Reopen the event for editing, choose All Occurrences when prompted
6. Open the Edit Recurrence dialog

Actual Results:
===============
Custom Recurrence Dialog displays "Monthly" in the dropdown menu but the other controls belong to the Daily recurrence. Preview is not correct. Error Console shows:

  Error: days[val[i] - 1] is undefined
  Source File: chrome://calendar/content/calendar-daypicker.xml
  Line: 271

Expected Results:
=================
Custom Recurrence Dialog shows the correct content and settings that were used when creating the event.

Looking for related bugs I stumbled about Bug 453138 but that seems to be only a cosmetic issue.
Flags: blocking-calendar1.0?
http://mxr.mozilla.org/comm-central/source/calendar/base/content/dialogs/calendar-event-dialog-recurrence.js#174 with a negative value (from the last day of month rule) causes a negative index for the value given to the setter, so 
http://mxr.mozilla.org/comm-central/source/calendar/base/content/calendar-daypicker.xml#271 tries to get the element from the days array with a negative index.
Attached patch Patch v1Splinter Review
This should do it. Stefan, can you test the patch, please?
Assignee: nobody → mschroeder
Status: NEW → ASSIGNED
Attachment #349607 - Flags: review?(Berend.Cornelius)
OS: Windows XP → All
Hardware: PC → All
Target Milestone: --- → 1.0
Andreas tested yesterday and found it worked Ok. I will do the review later on.
Attachment #349607 - Flags: review?(Berend.Cornelius) → review+
Comment on attachment 349607 [details] [diff] [review]
Patch v1

Looking at your fix I could see that your introduced logic has already been implemented in the "daypicker-weekday" binding. This fortifys my attitude about the importance of source code consolidation.
r=berend
Pushed to comm-central <http://hg.mozilla.org/comm-central/rev/e7df063ff63c>

-> FIXED
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Flags: blocking-calendar1.0?
Resolution: --- → FIXED
Checked in sunbird and lightning build 20081202 -> VERIFIED.
Status: RESOLVED → VERIFIED
These bugs are likely targeted at Lightning 1.0b1, not Lightning 1.0. If this change was done in error, please adjust the target milestone to its correct value. To filter on this bugspam, you can use "lightning-10-target-move".
Target Milestone: 1.0 → 1.0b1
You need to log in before you can comment on or make changes to this bug.