On Apr 25 16:17, Christian Franke wrote: > Corinna Vinschen wrote: > > Can you tell me exactly where the problem > > happens which leads to this patch, please? > > partime.c: > ... > parse_pattern_letter (s, c, t) > ... > case 's': /* second [00-60 followed by optional fraction] */ > { > int frac; > s = parse_decimal (s, 2, 0, 60, 1, &t->tm.tm_sec, &frac); > t->tm.tm_sec += frac; > } > > parse_decimal("59.50001", ...) returns tm_sec = 59 and frac=1 which > results in tm_sec=60, but maketime({...; tm.tm_sec=60;...}, .) returns > -1 always.
Yeah, these are exactly the lines which you patch. When I asked for where exactly the problem happens, I was asking where maketime makes the mistake of not taking denormalized timestamps into account, where the condition is which let it return -1. Don't get me wrong, I appreciate the patch, but since you provided a patch, I assumed you already debugged this problem, so you can point to the place where it happens. Yes, I'm a lazy chicken and I'm just trying to avoid double work ;-) Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/