Erik de Castro Lopo : msvcrt: Clear end-of-file flag on fseek.

Alexandre Julliard julliard at winehq.org
Wed Apr 9 05:31:30 CDT 2008


Module: wine
Branch: master
Commit: 60501aa93e506e8a36504d6cf325f480c619577f
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=60501aa93e506e8a36504d6cf325f480c619577f

Author: Erik de Castro Lopo <mle+win at mega-nerd.com>
Date:   Tue Apr  8 21:53:53 2008 +1000

msvcrt: Clear end-of-file flag on fseek.

---

 dlls/msvcrt/file.c       |    2 ++
 dlls/msvcrt/tests/file.c |    2 +-
 2 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/dlls/msvcrt/file.c b/dlls/msvcrt/file.c
index 0c1e84b..866d28d 100644
--- a/dlls/msvcrt/file.c
+++ b/dlls/msvcrt/file.c
@@ -918,6 +918,8 @@ int CDECL MSVCRT_fseek(MSVCRT_FILE* file, long offset, int whence)
   if(file->_flag & MSVCRT__IORW) {
         file->_flag &= ~(MSVCRT__IOREAD|MSVCRT__IOWRT);
   }
+  /* Clear end of file flag */
+  file->_flag &= ~MSVCRT__IOEOF;
   return (_lseek(file->_file,offset,whence) == -1)?-1:0;
 }
 
diff --git a/dlls/msvcrt/tests/file.c b/dlls/msvcrt/tests/file.c
index d406ae5..aa58a32 100644
--- a/dlls/msvcrt/tests/file.c
+++ b/dlls/msvcrt/tests/file.c
@@ -241,7 +241,7 @@ static void test_readmode( BOOL ascii_mode )
     ok(fread(buffer,1,1,file)==0,"fread failure in %s\n", IOMODE);
     ok(feof(file)!=0,"feof failure in %s\n", IOMODE);
     ok(fseek(file,-3,SEEK_CUR)==0,"seek failure in %s\n", IOMODE);
-    todo_wine ok(feof(file)==0,"feof failure in %s\n", IOMODE);
+    ok(feof(file)==0,"feof failure in %s\n", IOMODE);
     ok(fread(buffer,2,1,file)==1,"fread failed in %s\n", IOMODE);
     ok(feof(file)==0,"feof failure in %s\n", IOMODE);
     ok(fread(buffer,2,1,file)==0,"fread failure in %s\n",IOMODE);




More information about the wine-cvs mailing list