git: iconv: Sync#2 - Support ICONV_{GET,SET}_ILSEQ_INVALID
Sascha Wildner
swildner at crater.dragonflybsd.org
Fri Jan 10 10:55:22 PST 2014
commit 9d94407120498b0331be09b25c4786a98396c14e
Author: John Marino <draco at marino.st>
Date: Fri Jan 10 01:06:03 2014 +0100
iconv: Sync#2 - Support ICONV_{GET,SET}_ILSEQ_INVALID
Add ICONV_{GET,SET}_ILSEQ_INVALID iconvctl. GNU iconv returns EILSEQ
when there is an invalid character in the output codeset while it is
valid in the input. However, POSIX requires iconv() to perform an
implementation-defined conversion on the character. So, Citrus iconv
converts such a character to a special character which means it is
invalid in the output codeset.
This is not a problem in most cases but some software like libxml2
depends on GNU's behavior to determine if a character is output as-is
or another form such as a character entity (&#NNN;).
Taken verbatim from:
FreeBSD SVN 258537 (24 NOV 2013)
Summary of changes:
include/iconv.h | 2 ++
lib/i18n_module/iconv_std/citrus_iconv_std.c | 10 ++++++++++
lib/libc/citrus/citrus_iconv_local.h | 1 +
lib/libc/iconv/iconv.c | 6 ++++++
lib/libc/iconv/iconvctl.3 | 27 ++++++++++++++++++++++++++-
5 files changed, 45 insertions(+), 1 deletion(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/9d94407120498b0331be09b25c4786a98396c14e
--
DragonFly BSD source repository
More information about the Commits
mailing list