[Kde-pim] KMail and KOrg incorrect time zone offset?

David Jarvie djarvie at kde.org
Sun May 11 17:13:45 BST 2014


On Sunday 11 May 2014 16:00:14 you wrote:
> On Saturday, May 10, 2014 09:57:45 John Layt wrote:
> > Hi,
> 
> > If Plasma is showing the right time, then that suggests KTimeZone is
> > reading the tz details right, and my initial thought was perhaps the
> > RFC date formatting had a bug, but if his KOrg appointments are also
> > wrong then that suggests something deeper.  Any thoughts on how to
> > debug?
> 
> Hi,
> 
> Looks like it's KTimeZone's fault.
> 
> #include <QDebug>
> #include <KDateTime>
> #include <ktzfiletimezone.h>
> 
> int main()
> {
>   KTzfileTimeZoneSource source("/usr/share/zoneinfo/");
>   KTzfileTimeZone zone(&source, "Africa/Johannesburg");
>   
>   KDateTime t(QDate(2013, 05, 10), QTime(13, 00), KDateTime::Spec(zone));
>   qDebug() << "Zone is valid?" << zone.isValid();
>   qDebug() << t.toString();
>   
>   return 0;
> }
> 
> This outputs:
> Zone is valid? true 
> "2013-05-10T13:00:00+03:00"
> 
> Which is wrong, because Johannesburg is UTC+2, not +3.
> 
> Inspecting the tz file:
> 
> $ zdump -v Africa/Johannesburg
> Africa/Johannesburg  -9223372036854775808 = NULL
> Africa/Johannesburg  -9223372036854689408 = NULL
> Africa/Johannesburg  Sun Feb  7 22:07:59 1892 UT = Sun Feb  7 23:59:59 1892 
> LMT isdst=0 gmtoff=6720
> Africa/Johannesburg  Sun Feb  7 22:08:00 1892 UT = Sun Feb  7 23:38:00 1892 
> SAST isdst=0 gmtoff=5400
> Africa/Johannesburg  Sat Feb 28 22:29:59 1903 UT = Sat Feb 28 23:59:59 1903 
> SAST isdst=0 gmtoff=5400
> Africa/Johannesburg  Sat Feb 28 22:30:00 1903 UT = Sun Mar  1 00:30:00 1903 
> SAST isdst=0 gmtoff=7200
> Africa/Johannesburg  Sat Sep 19 23:59:59 1942 UT = Sun Sep 20 01:59:59 1942 
> SAST isdst=0 gmtoff=7200
> Africa/Johannesburg  Sun Sep 20 00:00:00 1942 UT = Sun Sep 20 03:00:00 1942 
> SAST isdst=1 gmtoff=10800
> Africa/Johannesburg  Sat Mar 20 22:59:59 1943 UT = Sun Mar 21 01:59:59 1943 
> SAST isdst=1 gmtoff=10800
> Africa/Johannesburg  Sat Mar 20 23:00:00 1943 UT = Sun Mar 21 01:00:00 1943 
> SAST isdst=0 gmtoff=7200
> Africa/Johannesburg  Sat Sep 18 23:59:59 1943 UT = Sun Sep 19 01:59:59 1943 
> SAST isdst=0 gmtoff=7200
> Africa/Johannesburg  Sun Sep 19 00:00:00 1943 UT = Sun Sep 19 03:00:00 1943 
> SAST isdst=1 gmtoff=10800
> Africa/Johannesburg  Sat Mar 18 22:59:59 1944 UT = Sun Mar 19 01:59:59 1944 
> SAST isdst=1 gmtoff=10800
> 
> Africa/Johannesburg  Sat Mar 18 23:00:00 1944 UT = Sun Mar 19 01:00:00 1944 
> SAST isdst=0 gmtoff=7200
> 
> Africa/Johannesburg  9223372036854689407 = NULL
> Africa/Johannesburg  9223372036854775807 = NULL
> 
> 7200 is 2 hours, so looks correct.
> 
> 
> Maybe David Jarvie has a clue..

I'm looking into this. It might be a couple of days before I get the time to investigate properly.

-- 
David Jarvie.
KDE developer.
KAlarm author -- http://www.astrojar.org.uk/kalarm
_______________________________________________
KDE PIM mailing list kde-pim at kde.org
https://mail.kde.org/mailman/listinfo/kde-pim
KDE PIM home page at http://pim.kde.org/



More information about the kde-pim mailing list