msvcrt: Make snprintf and snwprintf use the msvcrt version of printf.
Remove todos from tests that succeed now.
This commit is contained in:
parent
ad8cb6133e
commit
ee603ce6dd
|
@ -433,8 +433,8 @@
|
|||
@ cdecl _setmode(long long)
|
||||
@ stub _setsystime #(ptr long)
|
||||
@ cdecl _sleep(long)
|
||||
@ varargs _snprintf(str long str) snprintf
|
||||
@ varargs _snwprintf(wstr long wstr) ntdll._snwprintf
|
||||
@ varargs _snprintf(str long str) MSVCRT__snprintf
|
||||
@ varargs _snwprintf(wstr long wstr) MSVCRT__snwprintf
|
||||
@ varargs _sopen(str long long) MSVCRT__sopen
|
||||
@ varargs _spawnl(long str str)
|
||||
@ varargs _spawnle(long str str)
|
||||
|
|
|
@ -496,16 +496,12 @@ static void test_snprintf (void)
|
|||
struct snprintf_test {
|
||||
const char *format;
|
||||
int expected;
|
||||
struct {
|
||||
int retval;
|
||||
int render;
|
||||
} todo;
|
||||
};
|
||||
/* Pre-2.1 libc behaviour, not C99 compliant. */
|
||||
const struct snprintf_test tests[] = {{"short", 5, {0, 0}},
|
||||
{"justfit", 7, {0, 0}},
|
||||
{"justfits", 8, {0, 1}},
|
||||
{"muchlonger", -1, {1, 1}}};
|
||||
const struct snprintf_test tests[] = {{"short", 5},
|
||||
{"justfit", 7},
|
||||
{"justfits", 8},
|
||||
{"muchlonger", -1}};
|
||||
char buffer[8];
|
||||
const int bufsiz = sizeof buffer;
|
||||
unsigned int i;
|
||||
|
@ -516,12 +512,10 @@ static void test_snprintf (void)
|
|||
const int n = _snprintf (buffer, bufsiz, fmt);
|
||||
const int valid = n < 0 ? bufsiz : (n == bufsiz ? n : n+1);
|
||||
|
||||
todo (tests[i].todo.retval ? "wine" : "none")
|
||||
ok (n == expect, "\"%s\": expected %d, returned %d\n",
|
||||
fmt, expect, n);
|
||||
todo (tests[i].todo.render ? "wine" : "none")
|
||||
ok (!memcmp (fmt, buffer, valid),
|
||||
"\"%s\": rendered \"%.*s\"\n", fmt, valid, buffer);
|
||||
ok (n == expect, "\"%s\": expected %d, returned %d\n",
|
||||
fmt, expect, n);
|
||||
ok (!memcmp (fmt, buffer, valid),
|
||||
"\"%s\": rendered \"%.*s\"\n", fmt, valid, buffer);
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -712,9 +712,7 @@ static int pf_vsnprintf( pf_output *out, const WCHAR *format, va_list valist )
|
|||
|
||||
/* check we reached the end, and null terminate the string */
|
||||
assert( *p == 0 );
|
||||
r = pf_output_stringW( out, p, 1 );
|
||||
if( r<0 )
|
||||
return r;
|
||||
pf_output_stringW( out, p, 1 );
|
||||
|
||||
return out->used - 1;
|
||||
}
|
||||
|
@ -749,6 +747,19 @@ int MSVCRT_vsnprintf( char *str, unsigned int len,
|
|||
return r;
|
||||
}
|
||||
|
||||
/*********************************************************************
|
||||
* _snprintf (MSVCRT.@)
|
||||
*/
|
||||
int MSVCRT__snprintf(char *str, unsigned int len, const char *format, ...)
|
||||
{
|
||||
int retval;
|
||||
va_list valist;
|
||||
va_start(valist, format);
|
||||
retval = MSVCRT_vsnprintf(str, len, format, valist);
|
||||
va_end(valist);
|
||||
return retval;
|
||||
}
|
||||
|
||||
/*********************************************************************
|
||||
* _vsnwsprintf (MSVCRT.@)
|
||||
*/
|
||||
|
@ -765,6 +776,19 @@ int MSVCRT_vsnwprintf( MSVCRT_wchar_t *str, unsigned int len,
|
|||
return pf_vsnprintf( &out, format, valist );
|
||||
}
|
||||
|
||||
/*********************************************************************
|
||||
* _snwprintf (MSVCRT.@)
|
||||
*/
|
||||
int MSVCRT__snwprintf( MSVCRT_wchar_t *str, unsigned int len, const MSVCRT_wchar_t *format, ...)
|
||||
{
|
||||
int retval;
|
||||
va_list valist;
|
||||
va_start(valist, format);
|
||||
retval = MSVCRT_vsnwprintf(str, len, format, valist);
|
||||
va_end(valist);
|
||||
return retval;
|
||||
}
|
||||
|
||||
/*********************************************************************
|
||||
* sprintf (MSVCRT.@)
|
||||
*/
|
||||
|
|
Loading…
Reference in New Issue