summaryrefslogtreecommitdiff
path: root/tests/test-vasprintf-posix.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test-vasprintf-posix.c')
-rw-r--r--tests/test-vasprintf-posix.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/test-vasprintf-posix.c b/tests/test-vasprintf-posix.c
index 6a18413abb..e4cc0fb983 100644
--- a/tests/test-vasprintf-posix.c
+++ b/tests/test-vasprintf-posix.c
@@ -3954,6 +3954,26 @@ test_function (int (*my_asprintf) (char **, const char *, ...))
ASSERT (retval == 5);
free (result);
}
+
+ static wint_t L_invalid = (wchar_t) 0x76543210;
+
+ { /* Invalid wide character.
+ The conversion may succeed or may fail, but it should not abort. */
+ char *result;
+ int retval =
+ my_asprintf (&result, "%lc %d", L_invalid, 33, 44, 55);
+ if (retval >= 0)
+ free (result);
+ }
+
+ { /* Invalid wide character and width.
+ The conversion may succeed or may fail, but it should not abort. */
+ char *result;
+ int retval =
+ my_asprintf (&result, "%10lc %d", L_invalid, 33, 44, 55);
+ if (retval >= 0)
+ free (result);
+ }
#endif
/* Test the support of the 'x' conversion specifier for hexadecimal output of