Patch and test for scanf %i.
This commit is contained in:
parent
73593d7eed
commit
545a3b7118
@ -168,7 +168,7 @@ int _FUNCTION_ {
|
|||||||
base = 10; number_signed = 1;
|
base = 10; number_signed = 1;
|
||||||
goto number;
|
goto number;
|
||||||
case 'i': /* generic integer */
|
case 'i': /* generic integer */
|
||||||
base = 0; number_signed = 1;
|
base = 10; number_signed = 1;
|
||||||
number: {
|
number: {
|
||||||
/* read an integer */
|
/* read an integer */
|
||||||
long unsigned int cur = 0;
|
long unsigned int cur = 0;
|
||||||
|
@ -73,6 +73,15 @@ static void test_sscanf( void )
|
|||||||
ret = sscanf(buffer+2,"%*c%n",&number_so_far);
|
ret = sscanf(buffer+2,"%*c%n",&number_so_far);
|
||||||
ok(ret == 0 , "problem with format arg \"%%*c%%n\"");
|
ok(ret == 0 , "problem with format arg \"%%*c%%n\"");
|
||||||
ok(number_so_far == 1,"Read wrong arg for \"%%n\" %d instead of 2",number_so_far);
|
ok(number_so_far == 1,"Read wrong arg for \"%%n\" %d instead of 2",number_so_far);
|
||||||
|
|
||||||
|
/* Check %i according to bug 1878 */
|
||||||
|
strcpy(buffer,"123");
|
||||||
|
ret = sscanf(buffer, "%i", &result);
|
||||||
|
ok( ret == 1 , "Wrong number of arguments read");
|
||||||
|
ok(result == 123, "Wrong number read");
|
||||||
|
ret = sscanf(buffer, "%d", &result);
|
||||||
|
ok( ret == 1 , "Wrong number of arguments read");
|
||||||
|
ok(result == 123, "Wrong number read");
|
||||||
}
|
}
|
||||||
|
|
||||||
static void test_sprintf( void )
|
static void test_sprintf( void )
|
||||||
|
Loading…
x
Reference in New Issue
Block a user