Exchange can send TimeZone with zero StandardDate
Submitted by Graham Cobb
Assigned to SyncEvolution Community
Description
Under some circumstances (not known -- may be to do with updates to existing events but only seems to occur for me with some specific events imported from outside Outlook), Exchange sends a <TimeZone>
which is mostly 0.
The TZOFFSETFROM and TZOFFSETTO seem to come out right, but the DTSTART is all zero (invalid). This results in an invalid VTIMEZONE being generated and passed to syncevolution.
Although I don't know what causes Exchange to send this, and it could be argued that the message is invalid because the SYSTEMTIME cannot be all zero, we apparently have to handle this case. It looks like what Exchange is trying to do is to specify a timezone (+0100 in my case) for the event without knowing the real timezone for the event. I suggest that if the starting date-time in the timezone sent from Exchange is zero, that we set it to an arbitrary date in the past. I suggest 1970-01-01, for little good reason.
I plan to investigate this further, and create a fix, but it may not be immediate as my build/test environment is not up to date.