Closed Bug 336577 Opened 18 years ago Closed 18 years ago

handle bogus TZID quoting?

Categories

(Calendar :: Internal Components, enhancement)

enhancement
Not set
normal

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 357252

People

(Reporter: blair, Unassigned)

References

Details

Attachments

(2 files)

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.3) Gecko/20060426 Firefox/1.5.0.3 XPCOMViewer/0.8.1.2
Build Identifier: Lightning nightly (build 2006050307)

When importing a ics file that contains VEVENT and RECURRENCE-ID with TZID. Lightning and Sunbird throw an exception: -

Unable to read from file:<filename>
[Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [calIIcalComponent.recurrenceId]"

etc...

Reproducible: Always

Steps to Reproduce:
1. Attempt to import provided ICS file (i.e. Lightning, choose "Calendar/Import..."


Actual Results:  
Exception dialog appears then a prompt for destination calendar. Data not imported.

Expected Results:  
No exception dialog. Prompt for destination calendar. Data should be imported.

By editing the ICS file and changing a line that looks like this: -

RECURRENCE-ID;TZID="Greenwich Mean Time : Dublin, Edinburgh, Lisbon, London":20060517T000000

to this: -

RECURRENCE-ID:20060517T000000

stops the exception from happening.
Attached file test case that shows bug —
Of course this testcase fails because you haven't defined the timezone that you're using as a TZID.  A VTIMEZONE component is required to identify/define any uses of TZID.  Can you try making those changes and see if it helps?
(In reply to comment #2)
> Of course this testcase fails because you haven't defined the timezone that
> you're using as a TZID.  A VTIMEZONE component is required to identify/define
> any uses of TZID.  Can you try making those changes and see if it helps?
> 

Okay I thought by stripping the file down to a core VEVENT it would help you trace the bug. Here I attach the full file anonymized with the TIMEZONE component still in place. This file was produced by Outlook.
(In reply to comment #3)
> Created an attachment (id=220931) [edit]
> Updated sample file that demonstrates bug.
> 
BEGIN:VTIMEZONE
TZID:Greenwich Mean Time : Dublin, Edinburgh, Lisbon, London
...
DTSTART;TZID="Greenwich Mean Time : Dublin, Edinburgh, Lisbon, London":20060505T090000
This is still a faulty ics file.  Placing the timezone in quotes in one place, but not in another is not allowed.  If I add quotes to the first TZID, everything works fine for me and I can import the file without a problem.
You are right, from reading RFC2445, Section 4.1.1: -

   Property parameters with values containing a COLON, a SEMICOLON or a
   COMMA character MUST be placed in quoted text.

Still, it might take a while to get MS to fix their buggy implementation. Is there a workaround for Lightning or Sunbird?
The bugspam monkeys have struck again. They are currently chewing on default assignees for Calendar. Be afraid for your sanity!
Assignee: base → nobody
*** Bug 353387 has been marked as a duplicate of this bug. ***
Summary: Importing iCalendar files with a recurring event fails. → handle bogus TZID quoting?
Severity: major → enhancement
Status: UNCONFIRMED → NEW
Ever confirmed: true
OS: Windows XP → All
Hardware: PC → All
This should actually already have been fixed in bug 357252.

*** This bug has been marked as a duplicate of 357252 ***
Status: NEW → RESOLVED
Closed: 18 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: