mirror of
git://sourceware.org/git/glibc.git
synced 2024-11-21 01:12:26 +08:00
Add tests for mbstowcs and wcstombs.
This commit is contained in:
parent
c06aad090c
commit
2a81f17880
@ -1104,6 +1104,24 @@ do_test (void)
|
|||||||
CHK_FAIL_END
|
CHK_FAIL_END
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
cp = "A";
|
||||||
|
if (mbstowcs (wenough, cp, 10) != 1)
|
||||||
|
{
|
||||||
|
puts ("first mbstowcs test failed");
|
||||||
|
ret = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
#if __USE_FORTIFY_LEVEL >= 1
|
||||||
|
/* We know the wchar_t encoding is ISO 10646. So pick a
|
||||||
|
character which has a multibyte representation which does not
|
||||||
|
fit. */
|
||||||
|
CHK_FAIL_START
|
||||||
|
wchar_t wsmallbuf[2];
|
||||||
|
cp = "ABC";
|
||||||
|
mbstowcs (wsmallbuf, cp, 10);
|
||||||
|
CHK_FAIL_END
|
||||||
|
#endif
|
||||||
|
|
||||||
memset (&s, '\0', sizeof (s));
|
memset (&s, '\0', sizeof (s));
|
||||||
cp = "A";
|
cp = "A";
|
||||||
if (mbsnrtowcs (wenough, &cp, 1, 10, &s) != 1)
|
if (mbsnrtowcs (wenough, &cp, 1, 10, &s) != 1)
|
||||||
@ -1142,6 +1160,24 @@ do_test (void)
|
|||||||
CHK_FAIL_END
|
CHK_FAIL_END
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
wcp = L"A";
|
||||||
|
if (wcstombs (enough, wcp, 10) != 1)
|
||||||
|
{
|
||||||
|
puts ("first wcstombs test failed");
|
||||||
|
ret = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
#if __USE_FORTIFY_LEVEL >= 1
|
||||||
|
/* We know the wchar_t encoding is ISO 10646. So pick a
|
||||||
|
character which has a multibyte representation which does not
|
||||||
|
fit. */
|
||||||
|
CHK_FAIL_START
|
||||||
|
char smallbuf[2];
|
||||||
|
wcp = L"ABC";
|
||||||
|
wcstombs (smallbuf, wcp, 10);
|
||||||
|
CHK_FAIL_END
|
||||||
|
#endif
|
||||||
|
|
||||||
memset (&s, '\0', sizeof (s));
|
memset (&s, '\0', sizeof (s));
|
||||||
wcp = L"A";
|
wcp = L"A";
|
||||||
if (wcsnrtombs (enough, &wcp, 1, 10, &s) != 1)
|
if (wcsnrtombs (enough, &wcp, 1, 10, &s) != 1)
|
||||||
|
Loading…
Reference in New Issue
Block a user