From: Joseph Myers Date: Mon, 31 Dec 2018 23:51:15 +0000 (+0000) Subject: Update timezone code from tzcode 2018i. X-Git-Tag: glibc-2.29~87 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e740e5b1f0d786bdd95898b61c4a81f8f00bb063;p=thirdparty%2Fglibc.git Update timezone code from tzcode 2018i. This patch updates files coming from tzcode to the versions in tzcode 2018i. No changes elsewhere in glibc were needed. Tested for x86_64. * timezone/zdump.c: Update from tzcode 2018i. * timezone/zic.c: Likewise. --- diff --git a/ChangeLog b/ChangeLog index 5f29a301148..9dc753d49f9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2018-12-31 Joseph Myers + + * timezone/zdump.c: Update from tzcode 2018i. + * timezone/zic.c: Likewise. + 2018-12-31 Paul Eggert regex: improve Gnulib port to AIX diff --git a/timezone/zdump.c b/timezone/zdump.c index 608f288691f..0fc8ced96ae 100644 --- a/timezone/zdump.c +++ b/timezone/zdump.c @@ -807,8 +807,10 @@ my_snprintf(char *s, size_t size, char const *format, ...) arglen = strlen(arg); } else { n = vsprintf(buf, format, args); - if (n < 0) + if (n < 0) { + va_end(args); return n; + } arg = buf; arglen = n; } diff --git a/timezone/zic.c b/timezone/zic.c index cb1bf28bfbc..2ebc66a9af5 100644 --- a/timezone/zic.c +++ b/timezone/zic.c @@ -2741,7 +2741,7 @@ error(_("can't determine time zone abbreviation to use just after until time")); if (attypes[i].at > lastat->at) lastat = &attypes[i]; if (lastat->at < rpytime(&xr, max_year - 1)) { - addtt(rpytime(&xr, max_year + 1), typecnt-1); + addtt(rpytime(&xr, max_year + 1), lastat->type); attypes[timecnt - 1].dontmerge = true; } } @@ -2945,7 +2945,7 @@ lowerit(char a) } /* case-insensitive equality */ -static bool +static ATTRIBUTE_PURE bool ciequal(register const char *ap, register const char *bp) { while (lowerit(*ap) == lowerit(*bp++)) @@ -2954,7 +2954,7 @@ ciequal(register const char *ap, register const char *bp) return false; } -static bool +static ATTRIBUTE_PURE bool itsabbr(register const char *abbr, register const char *word) { if (lowerit(*abbr) != lowerit(*word)) @@ -2970,7 +2970,7 @@ itsabbr(register const char *abbr, register const char *word) /* Return true if ABBR is an initial prefix of WORD, ignoring ASCII case. */ -static bool +static ATTRIBUTE_PURE bool ciprefix(char const *abbr, char const *word) { do