Handle the printf %F format modifier.

This commit is contained in:
Mike McCormack 2005-03-04 10:47:27 +00:00 committed by Alexandre Julliard
parent 50f59f8ced
commit 5b4327515e
2 changed files with 17 additions and 0 deletions

View File

@ -71,6 +71,11 @@ static void test_sprintf( void )
ok(!strcmp(buffer," 0X00000039"),"Pointer formatted incorrectly\n"); ok(!strcmp(buffer," 0X00000039"),"Pointer formatted incorrectly\n");
ok( r==12, "return count wrong\n"); ok( r==12, "return count wrong\n");
format = "%Fp";
r = sprintf(buffer,format,(void *)57);
ok(!strcmp(buffer,"00000039"),"Pointer formatted incorrectly \"%s\"\n",buffer);
ok( r==8, "return count wrong\n");
format = "%04s"; format = "%04s";
r = sprintf(buffer,format,"foo"); r = sprintf(buffer,format,"foo");
ok(!strcmp(buffer,"0foo"),"String not zero-prefixed \"%s\"\n",buffer); ok(!strcmp(buffer,"0foo"),"String not zero-prefixed \"%s\"\n",buffer);
@ -240,6 +245,16 @@ static void test_sprintf( void )
ok(!strcmp(buffer,"j"), "failed\n"); ok(!strcmp(buffer,"j"), "failed\n");
ok( r==1, "return count wrong\n"); ok( r==1, "return count wrong\n");
format = "%F";
r = sprintf(buffer, format,-1);
ok(!strcmp(buffer,""), "failed\n");
ok( r==0, "return count wrong\n");
format = "%H";
r = sprintf(buffer, format,-1);
ok(!strcmp(buffer,"H"), "failed\n");
ok( r==1, "return count wrong\n");
format = "x%cx"; format = "x%cx";
r = sprintf(buffer, format, 0x100+'X'); r = sprintf(buffer, format, 0x100+'X');
ok(!strcmp(buffer,"xXx"), "failed\n"); ok(!strcmp(buffer,"xXx"), "failed\n");

View File

@ -491,6 +491,8 @@ static int pf_vsnprintf( pf_output *out, const WCHAR *format, va_list valist )
} }
else if( *p == 'w' ) else if( *p == 'w' )
flags.WideString = *p++; flags.WideString = *p++;
else if( *p == 'F' )
p++; /* ignore */
else else
break; break;
} }