Bug 96703 - "timezone not found" while parsing events
Summary: "timezone not found" while parsing events
Status: RESOLVED WAITINGFORINFO
Alias: None
Product: korganizer
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: unspecified Linux
: NOR normal
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-01-10 14:16 UTC by Michael Hebenstreit
Modified: 2011-03-06 17:43 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
EVENT-File (1.59 KB, text/plain)
2005-01-10 14:18 UTC, Michael Hebenstreit
Details
changed file (14.22 KB, text/plain)
2005-01-10 14:19 UTC, Michael Hebenstreit
Details
changed file (79.75 KB, text/plain)
2005-01-10 14:19 UTC, Michael Hebenstreit
Details
changed file (4.28 KB, text/plain)
2005-01-10 14:20 UTC, Michael Hebenstreit
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Hebenstreit 2005-01-10 14:16:28 UTC
Version:           Unbekannt (using KDE 3.3.2 Level "a" , unofficial build of SUSE )
Compiler:          gcc version 3.3.3 (SuSE Linux)
OS:                Linux (i686) release 2.6.5-7.111.19-smp

error while parsing events in /home/heb/.kde/share/apps/korganizer/income - the timezone-list does not contain any timzones yet, so the timezones integrated in the events have to be read first

>diff icalformat.cpp icalformat.cpp_old

365,375d364
<   // Iterate through all timezones before we do anything else. That way, the
<   // information needed to interpret times in actually useful objects is
<   // available below.
<   c = icalcomponent_get_first_component(message,ICAL_VTIMEZONE_COMPONENT);
<   while (c) {
< //    kdDebug(5800) << "----Timezone found" << endl;
<     mImpl->readTimezone(c);
<     c = icalcomponent_get_next_component(message,ICAL_VTIMEZONE_COMPONENT);
<   }
<
<

# readTimezone() must become a "public" method
> diff icalformatimpl.h icalformatimpl.h_old
89d88
<     void readTimezone(icalcomponent *vtimezone);
96a96
>     void readTimezone(icalcomponent *vtimezone);

these changes led to 2 additional errors - MS uses the date 1601-01-01 as start-time for DTSTART and similiar properties. QDate can not accomadete these date (due to the Gregorian Calender, see documentation QDate). I guess it's OK to change the start year to 1753 in these cases. 
MS also introduces the additional property "X-MICROSOFT-CDO-TZID" (error "libkcal: Timezone::Timezone(): Unknown property: 54") - IMHO an error messsage in these cases is unecessary  

korganizer: MailScheduler::retrieveTransactions: dir: /home/heb/.kde/share/apps/korganizer/income
korganizer: -- File: 0nvnbCBszp
libkcal: Timezone::Timezone(): Unknown property: 54
libkcal: ---zoneId: "(GMT+01.00) Sarajevo/Warsaw/Zagreb"
libkcal: ---standard phase: found
libkcal: ---daylight phase: found
QDate::setYMD: Invalid date 1601-01-01
QDate::setYMD: Invalid date 1601-01-01
QDate::setYMD: Invalid date 1601-01-01
QDate::setYMD: Invalid date 1601-01-01
libkcal: ICALFormat::readEvent(): all day event: false
libkcal: ICalFormat::parseScheduleMessage() getting method...
libkcal: ICalFormat::parseScheduleMessage() restriction...
libkcal: ICalFormat::parseScheduleMessage() classify...
libkcal: ICalFormat::parseScheduleMessage() returning...
libkcal: ICalFormat::parseScheduleMessage(), result = 4
libkcal: ICalFormat::parseScheduleMessage(), status = 3


> diff icalformatimpl.cpp icalformatimpl.cpp_old
134,140c134
<       // QDate can't use YYYY before 1752
<       int Year = dtstart.year;
<       if(Year < 1753)
<       {
<          Year = 1753;
<       }
<       QDateTime tmp(QDate(Year,dtstart.month,dtstart.day), QTime(dtstart.hour,dtstart.minute,dtstart.second));
---
>       QDateTime tmp(QDate(dtstart.year,dtstart.month,dtstart.day), QTime(dtstart.hour,dtstart.minute,dtstart.second));
210,213d203
<           case ICAL_X_PROPERTY:
<             kdDebug(5800) << "Timezone::Timezone(): found X (extended?) property, name:" << icalproperty_get_x_name(p) << " value:" <<  icalproperty_get_x(p) << endl;
<             break;
<
Comment 1 Michael Hebenstreit 2005-01-10 14:17:51 UTC
I add some attachments:

1) a EVENT-file stored in /home/heb/.kde/share/apps/korganizer/income
2) the new versions of the files I changed
Comment 2 Michael Hebenstreit 2005-01-10 14:18:44 UTC
Created attachment 9019 [details]
EVENT-File
Comment 3 Michael Hebenstreit 2005-01-10 14:19:30 UTC
Created attachment 9020 [details]
changed file
Comment 4 Michael Hebenstreit 2005-01-10 14:19:49 UTC
Created attachment 9021 [details]
changed file
Comment 5 Michael Hebenstreit 2005-01-10 14:20:05 UTC
Created attachment 9022 [details]
changed file
Comment 6 Reinhold Kainhofer 2006-11-02 19:00:43 UTC
Reassigning all KOrganizer bug reports and wishes to the newly created 
korganizer-devel mailing list.
Comment 7 Sergio Martins 2008-12-28 22:24:53 UTC
I can't reproduce this, can you retest with a recent version?

Thanks