diff --git a/dlls/msvcrt/file.c b/dlls/msvcrt/file.c index 14e786a5487..9162ee7e30b 100644 --- a/dlls/msvcrt/file.c +++ b/dlls/msvcrt/file.c @@ -2503,7 +2503,7 @@ MSVCRT_size_t MSVCRT_fread(void *ptr, MSVCRT_size_t size, MSVCRT_size_t nmemb, M /* expose feof condition in the flags * MFC tests file->_flag for feof, and doesn't not call feof()) */ - if (pread == 0) + if ( MSVCRT_fdesc[file->_file].wxflag & WX_ATEOF) file->_flag |= MSVCRT__IOEOF; else if (pread == -1) { diff --git a/dlls/msvcrt/tests/file.c b/dlls/msvcrt/tests/file.c index 086c37fa05d..bcc60fd2dae 100644 --- a/dlls/msvcrt/tests/file.c +++ b/dlls/msvcrt/tests/file.c @@ -125,7 +125,7 @@ static void test_fileops( void ) /* sizeof(buffer) > content of file */ ok(fread(buffer, sizeof(buffer), 1, file) == 0, "fread test failed\n"); /* feof should be set now */ - todo_wine ok(feof(file), "feof after fread failed\n"); + ok(feof(file), "feof after fread failed\n"); fclose (file); unlink ("fdopen.tst");