Module: wine Branch: refs/heads/master Commit: 39b725b79993600b3925eaeca10dc34c1dbd6740 URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=39b725b79993600b3925eaec...
Author: Jesse Allen the3dfxdude@gmail.com Date: Tue Dec 20 11:49:05 2005 +0100
msvcrt: Ignore PadZero when LeftAlign is true in printf conversions.
---
dlls/msvcrt/tests/printf.c | 5 +++++ dlls/msvcrt/wcs.c | 5 ++--- 2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/dlls/msvcrt/tests/printf.c b/dlls/msvcrt/tests/printf.c index 72b12a4..3979a95 100644 --- a/dlls/msvcrt/tests/printf.c +++ b/dlls/msvcrt/tests/printf.c @@ -66,6 +66,11 @@ static void test_sprintf( void ) ok(!strcmp(buffer,"0001"),"Character not zero-prefixed "%s"\n",buffer); ok( r==4, "return count wrong\n");
+ format = "%-04c"; + r = sprintf(buffer,format,'1'); + ok(!strcmp(buffer,"1 "),"Character zero-padded and/or not left-adjusted "%s"\n",buffer); + ok( r==4, "return count wrong\n"); + format = "%p"; r = sprintf(buffer,format,(void *)57); ok(!strcmp(buffer,"00000039"),"Pointer formatted incorrectly "%s"\n",buffer); diff --git a/dlls/msvcrt/wcs.c b/dlls/msvcrt/wcs.c index b8dc39e..efb93d8 100644 --- a/dlls/msvcrt/wcs.c +++ b/dlls/msvcrt/wcs.c @@ -286,12 +286,11 @@ static inline int pf_fill( pf_output *ou int i, r = 0;
if( ( !left && flags->LeftAlign ) || - ( left && !flags->LeftAlign ) || - ( left && flags->PadZero ) ) + ( left && !flags->LeftAlign )) { for( i=0; (i<(flags->FieldLength-len)) && (r>=0); i++ ) { - if( flags->PadZero ) + if( left && flags->PadZero ) r = pf_output_stringA( out, "0", 1 ); else r = pf_output_stringA( out, " ", 1 );