summaryrefslogtreecommitdiff
path: root/gnulib/lib/mbrtowc.c
diff options
context:
space:
mode:
authorGuido Günther <agx@sigxcpu.org>2014-07-14 11:40:12 +0200
committerGuido Günther <agx@sigxcpu.org>2014-07-14 11:40:12 +0200
commitab710a4bc80b419b99089e71eb5b1a3e32adc7a5 (patch)
treef741889cf71bbdeb1f9f0097ab746f500a7e8f05 /gnulib/lib/mbrtowc.c
parent899c1d32fd12eda134f69c18255c96f6a428679b (diff)
New upstream version 1.2.6
Diffstat (limited to 'gnulib/lib/mbrtowc.c')
-rw-r--r--gnulib/lib/mbrtowc.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/gnulib/lib/mbrtowc.c b/gnulib/lib/mbrtowc.c
index f4d580aa8..d31aaab91 100644
--- a/gnulib/lib/mbrtowc.c
+++ b/gnulib/lib/mbrtowc.c
@@ -328,7 +328,7 @@ mbrtowc (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps)
size_t
rpl_mbrtowc (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps)
{
-# if MBRTOWC_NULL_ARG2_BUG || MBRTOWC_RETVAL_BUG
+# if MBRTOWC_NULL_ARG2_BUG || MBRTOWC_RETVAL_BUG || MBRTOWC_EMPTY_INPUT_BUG
if (s == NULL)
{
pwc = NULL;
@@ -337,6 +337,11 @@ rpl_mbrtowc (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps)
}
# endif
+# if MBRTOWC_EMPTY_INPUT_BUG
+ if (n == 0)
+ return (size_t) -2;
+# endif
+
# if MBRTOWC_RETVAL_BUG
{
static mbstate_t internal_state;