msvcrt: Add support for fflush to clear an input buffer.
This commit is contained in:
parent
09a7f8c196
commit
1a01893c74
@ -792,6 +792,13 @@ int CDECL MSVCRT_fflush(MSVCRT_FILE* file)
|
|||||||
MSVCRT__unlock_file(file);
|
MSVCRT__unlock_file(file);
|
||||||
|
|
||||||
return res;
|
return res;
|
||||||
|
} else if(file->_flag & MSVCRT__IOREAD) {
|
||||||
|
MSVCRT__lock_file(file);
|
||||||
|
file->_cnt = 0;
|
||||||
|
file->_ptr = file->_base;
|
||||||
|
MSVCRT__unlock_file(file);
|
||||||
|
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -619,7 +619,7 @@ static void test_fflush( void )
|
|||||||
ok(ret == 0, "expected 0, got %d\n", ret);
|
ok(ret == 0, "expected 0, got %d\n", ret);
|
||||||
memset(buf2, '?', sizeof(buf2));
|
memset(buf2, '?', sizeof(buf2));
|
||||||
fread(buf2, 1, sizeof(buf2), tempfh);
|
fread(buf2, 1, sizeof(buf2), tempfh);
|
||||||
todo_wine ok(memcmp(buf1, buf2, sizeof(buf1)) == 0, "Got unexpected data (%c)\n", buf2[0]);
|
ok(memcmp(buf1, buf2, sizeof(buf1)) == 0, "Got unexpected data (%c)\n", buf2[0]);
|
||||||
|
|
||||||
/* fflush(NULL) doesn't clear input buffer. */
|
/* fflush(NULL) doesn't clear input buffer. */
|
||||||
_lseek(_fileno(tempfh), 0, SEEK_SET);
|
_lseek(_fileno(tempfh), 0, SEEK_SET);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user