[tz] Problem with WORK_AROUND_QTBUG_53071

Paul Eggert eggert at cs.ucla.edu
Fri Jan 6 18:25:04 UTC 2017

On 01/05/2017 10:05 PM, Bradley White wrote:
> Regarding the localtime.c change, perhaps something better than
> ignoring a transition that was "almost surely generated" because
> of WORK_AROUND_QTBUG_53071, is to just ignore any trailing, no-op
> transitions.  That is, ...
> +                     /* Ignore any trailing, no-op transitions generated
> +                      * by zic as they don't help here and can run afoul
> +                      * of bugs in zic 2016j or earlier.  */
> +                     while (1 < sp->timecnt &&
> +                            sp->types[sp->timecnt - 1] ==
> +                                sp->types[sp->timecnt - 2])
> +                       sp->timecnt--;
I tried something like that but it that worked only on 32-bit clients
because the transitions were still in the 64-bit data and were not at
the end. My memory could be wrong (I didn't save all my work). Plus,
perhaps it could be fixed up somehow. I agree that if someone could get
something like the above to work in both 32- and 64-bit clients, with
both the unfixed and the fixed zic, it'd be a better fix.

More information about the tz mailing list