<div dir="ltr">Well that certainly sucks.</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Oct 29, 2013 at 3:03 AM, Robert Jordan <span dir="ltr"><<a href="mailto:robertj@gmx.net" target="_blank">robertj@gmx.net</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On 28.10.2013 07:35, Alistair Bush wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I am trying to figure out why exactly running<br>
DateTime.Now.<u></u>IsDaylightSavingTIme() returns false.<br>
I live in the Auckland/Pacific timezone and pretty much everywhere I<br>
look it confirms that yes it is daylight saving time.<br>
</blockquote>
<br></div>
Unfortunately, I don't remember the details, but I'm pretty<br>
sure that ves_icall_System_<u></u>CurrentSystemTimeZone_<u></u>GetTimeZoneData<br>
has a bug w/ respect to the Southern Hemisphere.<br>
<br>
The code assumes that a year always begins outside a DST zone,<br>
and this is obviously incorrect for the Southern Hemisphere.<br>
<br>
To fix this, the local var "is_daylight" must be properly<br>
initialized. Currently, it's always 0 at start, but it must<br>
be initialized with 1 when January, 1st is inside a DST<br>
zone.<br>
<br>
Maybe this:<br>
<br>
        is_daylight = start.tm_isdst > 0;<br>
<br>
just before<br>
<br>
        /* For each day of the year, calculate the tm_gmtoff. */<br>
        for (day = 0; day < 365; day++) {<br>
<br>
Robert<br>
<br>
<br>
______________________________<u></u>_________________<br>
Mono-devel-list mailing list<br>
<a href="mailto:Mono-devel-list@lists.ximian.com" target="_blank">Mono-devel-list@lists.ximian.<u></u>com</a><br>
<a href="http://lists.ximian.com/mailman/listinfo/mono-devel-list" target="_blank">http://lists.ximian.com/<u></u>mailman/listinfo/mono-devel-<u></u>list</a><br>
</blockquote></div><br></div>