]> git.ipfire.org Git - thirdparty/glibc.git/commit
intl: Handle translation output codesets with suffixes [BZ #26383]
authorArjun Shankar <arjun@redhat.com>
Fri, 25 Sep 2020 12:47:06 +0000 (14:47 +0200)
committerFangrui Song <i@maskray.me>
Sat, 28 Aug 2021 00:26:08 +0000 (17:26 -0700)
commit453aafef166abc5f3dab268b5bf0959cec8fb92b
treeeb424ce1ca8171ac6e6bf958280bd1668ddfd90c
parent804887a0c8d546cb4ffc7a57f3623e37c7102ac8
intl: Handle translation output codesets with suffixes [BZ #26383]

Commit 91927b7c7643 (Rewrite iconv option parsing [BZ #19519]) did not
handle cases where the output codeset for translations (via the `gettext'
family of functions) might have a caller specified encoding suffix such as
TRANSLIT or IGNORE.  This led to a regression where translations did not
work when the codeset had a suffix.

This commit fixes the above issue by parsing any suffixes passed to
__dcigettext and adds two new test-cases to intl/tst-codeset.c to
verify correct behaviour.  The iconv-internal function __gconv_create_spec
and the static iconv-internal function gconv_destroy_spec are now visible
internally within glibc and used in intl/dcigettext.c.
iconv/Versions
iconv/gconv_charset.c
iconv/gconv_charset.h
iconv/gconv_int.h
iconv/iconv_open.c
iconv/iconv_prog.c
intl/dcigettext.c
intl/tst-codeset.c