aboutsummaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
Diffstat (limited to 'tools')
-rw-r--r--tools/regression/lib/libc/locale/test-mbrtowc.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/tools/regression/lib/libc/locale/test-mbrtowc.c b/tools/regression/lib/libc/locale/test-mbrtowc.c
index d781f16d4428..630ae2e7ee87 100644
--- a/tools/regression/lib/libc/locale/test-mbrtowc.c
+++ b/tools/regression/lib/libc/locale/test-mbrtowc.c
@@ -86,6 +86,13 @@ main(int argc, char *argv[])
assert(mbrtowc(&wc, buf, 0, &s) == (size_t)-2);
assert(wc == L'z');
+ /* Check that mbrtowc() doesn't access the buffer when n == 0. */
+ wc = L'z';
+ memset(&s, 0, sizeof(s));
+ buf[0] = '\0';
+ assert(mbrtowc(&wc, buf, 0, &s) == (size_t)-2);
+ assert(wc == L'z');
+
/*
* Japanese (EUC) locale.
*/