* NEWS: Mention this. * tzselect.ksh: If iconv does not support support the GNU //TRANSLIT extension, fall back on POSIX iconv. This is needed, for example, on Solaris 10. --- NEWS | 3 +++ tzselect.ksh | 7 +++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/NEWS b/NEWS index a0d87bf6..4360a4b6 100644 --- a/NEWS +++ b/NEWS @@ -41,6 +41,9 @@ Unreleased, experimental changes tzselect no longer mishandles TZ strings when using mawk 1.4.3, which mishandles regular expressions of the form /X{2,}/. + tzselect no longer mishandles non-UTF-8 locales on platforms + where the iconv command lacks the GNU //TRANSLIT extension. + zic no longer mishandles data for Palestine after the year 2075. Previously, it incorrectly omitted post-2075 transitions that are predicted for just before and just after Ramadan. (Thanks to Ken diff --git a/tzselect.ksh b/tzselect.ksh index 91ba572a..43d91799 100644 --- a/tzselect.ksh +++ b/tzselect.ksh @@ -200,8 +200,11 @@ $translit && { (umask 77 && mkdir -- "$tmp") };} && trap 'status=$?; rm -fr -- "$tmp"; exit $status' 0 HUP INT PIPE TERM && - (iconv -f UTF-8 -t //TRANSLIT <"$TZ_COUNTRY_TABLE" >$tmp/iso3166.tab) \ - 2>/dev/null && + { (iconv -f UTF-8 -t //TRANSLIT <"$TZ_COUNTRY_TABLE" >$tmp/iso3166.tab) \ + 2>/dev/null || + (iconv -f UTF-8 <"$TZ_COUNTRY_TABLE" >$tmp/iso3166.tab) \ + 2>/dev/null + } && TZ_COUNTRY_TABLE=$tmp/iso3166.tab && iconv -f UTF-8 -t //TRANSLIT <"$TZ_ZONE_TABLE" >$tmp/$zonetabtype.tab && TZ_ZONE_TABLE=$tmp/$zonetabtype.tab -- 2.40.1