Hash :
63861afa
Author :
Date :
2023-03-30T23:12:50
mbsrtowcs: Fix behaviour in the C locale. * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Invoke gl_MBRTOWC_C_LOCALE. If mbrtowc is buggy in the C locale, override also mbsrtowcs. * modules/mbsrtowcs (Files): Add m4/mbrtowc.m4. * tests/test-mbsrtowcs.c (main): Add a test of the C locale, based on tests/test-mbrtowc.c. * tests/test-mbsrtowcs5.sh: New file, based on tests/test-mbrtowc5.sh. * modules/mbsrtowcs-tests (Files): Add it. (Makefile.am): Test it. * doc/posix-functions/mbsrtowcs.texi: Mention the C locale behaviour bug.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
Description:
mbsrtowcs() function: convert string to wide string.
Files:
lib/mbsrtowcs.c
lib/mbsrtowcs-impl.h
lib/mbsrtowcs-state.c
m4/mbsrtowcs.m4
m4/mbstate_t.m4
m4/mbrtowc.m4
m4/locale-fr.m4
m4/locale-ja.m4
m4/locale-zh.m4
m4/codeset.m4
Depends-on:
wchar
extensions
mbrtowc [test $HAVE_MBSRTOWCS = 0 || test $REPLACE_MBSRTOWCS = 1]
strnlen1 [test $HAVE_MBSRTOWCS = 0 || test $REPLACE_MBSRTOWCS = 1]
configure.ac:
gl_FUNC_MBSRTOWCS
gl_CONDITIONAL([GL_COND_OBJ_MBSRTOWCS],
[test $HAVE_MBSRTOWCS = 0 || test $REPLACE_MBSRTOWCS = 1])
AM_COND_IF([GL_COND_OBJ_MBSRTOWCS], [
AC_LIBOBJ([mbsrtowcs-state])
gl_PREREQ_MBSRTOWCS
])
gl_WCHAR_MODULE_INDICATOR([mbsrtowcs])
Makefile.am:
if GL_COND_OBJ_MBSRTOWCS
lib_SOURCES += mbsrtowcs.c
endif
Include:
<wchar.h>
Link:
$(MBRTOWC_LIB)
License:
LGPLv2+
Maintainer:
all