On 31 Oct 11, at 20:17, Michael Van Canneyt wrote: > On Mon, 31 Oct 2011, zeljko wrote: > > > > > Hi, > > > > > > I have daemon which uses Now() for getting current date/time, but something > > is wrong, time on server changed from 03:00 > > to 02:00 this weekend, but daemon's Now() was on old time ... until now ... > > I've just restarted it and now it applied > > new time. > > > > fpc-2.4.5, centos 5.5 .... > > > > Also this confirms something what happens sometimes when ntpd changes time > > ... > > > > Any hints ? What to do ? Any workaround ? > > It's probably the timezone information which is loaded only once at program > startup. > > This has been reported before, but no satisfying solution was found at the > time. > re-reading this file at each now() would be extremely slowing.
Sorry for a silly question but isn't the DST transition time stored within the same timezone definition file? If it is then you might calculate and store the next DST transition time coming after the time of initialization, compare it to the time requested for translation in EpochToLocal and trigger re-initialization of both TZSeconds and the next transition time whenever the original DST transition time is crossed... Tomas _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel