Index: modules/rostests_disabled/apitests/crt/_vsnprintf.c =================================================================== --- modules/rostests_disabled/apitests/crt/_vsnprintf.c (revision 64082) +++ modules/rostests_disabled/apitests/crt/_vsnprintf.c (working copy) @@ -31,37 +31,54 @@ call_varargs(buffer, 255, 12, "%S world!", L"hello"); call_varargs(buffer, 255, 12, "%s world!", "hello"); call_varargs(buffer, 255, 11, "%u cookies", 100); - /* This is how WINE implements _vcsprintf, and they are obviously wrong */ + StartSeh() +#if defined(TEST_CRTDLL)||defined(TEST_USER32) call_varargs(NULL, INT_MAX, -1, "%s it really work?", "does"); -#if defined(TEST_CRTDLL) || defined(TEST_USER32) +#else + call_varargs(NULL, INT_MAX, 20, "%s it really work?", "does"); +#endif + +#if defined(TEST_CRTDLL)||defined(TEST_USER32) EndSeh(STATUS_ACCESS_VIOLATION); #else EndSeh(STATUS_SUCCESS); #endif -#if defined(TEST_MSVCRT) /* NTDLL doesn't use/set errno */ + +#if defined(TEST_USER32) /* NTDLL doesn't use/set errno */ ok(errno == EINVAL, "Expected EINVAL, got %u\n", errno); +#else + ok(errno == 0, "Expected 0, got %u \n", errno); #endif + /* This one is no better */ StartSeh() +#if defined(TEST_CRTDLL)||defined(TEST_USER32) call_varargs(NULL, 0, -1, "%s it really work?", "does"); -#if defined(TEST_CRTDLL) || defined(TEST_USER32) +#else + call_varargs(NULL, 0, 20, "%s it really work?", "does"); +#endif + +#if defined(TEST_USER32) EndSeh(STATUS_ACCESS_VIOLATION); -#else +#else EndSeh(STATUS_SUCCESS); #endif -#if defined(TEST_MSVCRT) /* NTDLL doesn't use/set errno */ + +#if defined(TEST_USER32) /* NTDLL doesn't use/set errno */ ok(errno == EINVAL, "Expected EINVAL, got %u\n", errno); +#else + ok(errno == 0, "Expected 0, got %u \n", errno); #endif + /* One more NULL checks */ StartSeh() call_varargs(buffer, 255, -1, NULL); -#if defined(TEST_CRTDLL) EndSeh(STATUS_ACCESS_VIOLATION); + +#if defined(TEST_USER32) /* NTDLL doesn't use/set errno */ + ok(errno == EINVAL, "Expected EINVAL, got %u\n", errno); #else - EndSeh(STATUS_SUCCESS); + ok(errno == 0, "Expected 0, got %u \n", errno); #endif -#if defined(TEST_MSVCRT) /* NTDLL doesn't use/set errno */ - ok(errno == EINVAL, "Expected EINVAL, got %u\n", errno); -#endif } Index: modules/rostests_disabled/apitests/crt/_vsnwprintf.c =================================================================== --- modules/rostests_disabled/apitests/crt/_vsnwprintf.c (revision 64082) +++ modules/rostests_disabled/apitests/crt/_vsnwprintf.c (working copy) @@ -1,7 +1,7 @@ /* * PROJECT: ReactOS api tests * LICENSE: GPL - See COPYING in the top level directory - * PURPOSE: Test for _vsnprintf + * PURPOSE: Test for _vsnwprintf */ #include @@ -28,40 +28,43 @@ wchar_t buffer[255]; /* Test basic functionality */ - call_varargs(buffer, 255, 19, L"%s world!", "hello"); + call_varargs(buffer, 255, 10, L"%s world!", "hello"); call_varargs(buffer, 255, 12, L"%s world!", L"hello"); call_varargs(buffer, 255, 11, L"%u cookies", 100); /* This is how WINE implements _vcsprintf, and they are obviously wrong */ StartSeh() +#if defined(TEST_CRTDLL) call_varargs(NULL, INT_MAX, -1, L"%s it really work?", L"does"); -#if defined(TEST_CRTDLL) +#else + call_varargs(NULL, INT_MAX, 20, L"%s it really work?", L"does"); +#endif + +#if defined(TEST_USER32) EndSeh(STATUS_ACCESS_VIOLATION); -#else +#else EndSeh(STATUS_SUCCESS); #endif -#if defined(TEST_MSVCRT) /* NTDLL doesn't use/set errno */ + +#if defined(TEST_USER32)/* NTDLL doesn't use/set errno */ ok(errno == EINVAL, "Expected EINVAL, got %u\n", errno); +#else + ok(errno == 0, "Expected 0, got %u\n", errno); #endif + /* This one is no better */ StartSeh() +#if defined(TEST_CRTDLL) call_varargs(NULL, 0, -1, L"%s it really work?", L"does"); -#if defined(TEST_CRTDLL) - EndSeh(STATUS_ACCESS_VIOLATION); -#else +#else + call_varargs(NULL, 0, 20, L"%s it really work?", L"does"); +#endif EndSeh(STATUS_SUCCESS); -#endif -#if defined(TEST_MSVCRT) /* NTDLL doesn't use/set errno */ - ok(errno == EINVAL, "Expected EINVAL, got %u\n", errno); -#endif + ok(errno == 0, "Expected 0, got %u\n", errno); + + /* One more NULL checks */ StartSeh() call_varargs(buffer, 255, -1, NULL); -#if defined(TEST_CRTDLL) EndSeh(STATUS_ACCESS_VIOLATION); -#else - EndSeh(STATUS_SUCCESS); -#endif -#if defined(TEST_MSVCRT) /* NTDLL doesn't use/set errno */ - ok(errno == EINVAL, "Expected EINVAL, got %u\n", errno); -#endif + ok(errno == 0, "Expected 0, got %u\n", errno); }