Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 9 Apr 2017 16:06:24 +0300
From:      Andrey Chernov <ache@freebsd.org>
To:        Lev Serebryakov <lev@FreeBSD.org>, freebsd-i18n@freebsd.org
Subject:   Re: citrus/BSD iconv doesn't respect ICONV_SET_DISCARD_ILSEQ flag
Message-ID:  <53b57139-8e68-da83-8fe8-e132ea524b6d@freebsd.org>
In-Reply-To: <137414834.20170409140646@serebryakov.spb.ru>
References:  <137414834.20170409140646@serebryakov.spb.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
On 09.04.2017 14:06, Lev Serebryakov wrote:
>   I understand, that iconvctl(3) is GNU extension, but as soon as citurs
>  iconv used by FreeBSD libc formally supports this API and
>  ICONV_SET_DISCARD_ILSEQ flag, they should work, IMHO. But they don't. If I
>  try to convert simple UTF-8 string with illegal sequence to ASCII (all
>  legal character in this string is ASCII), it stops on illegal sequence and
>  returns error. GNU iconv from ports works correctly. I didn't try UTF-16
>  and UTF-32/UCS-4, but by looking at code, I'm afraid, they have same
>  problems.

I need to add that our iconv also don't support anything after //
forcing ports using GNU iconv:
        /*
         * Remove anything following a //, as these are options (like
         * //ignore, //translate, etc) and we just don't handle them.
         * This is for compatibility with software that uses these
         * blindly.
         */
//ignore is analogue of ICONV_SET_DISCARD_ILSEQ on.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?53b57139-8e68-da83-8fe8-e132ea524b6d>