diff --git a/reactos/lib/sdk/crt/stdio/file.c b/reactos/lib/sdk/crt/stdio/file.c index b4ccb1d7388..64138a5ca17 100644 --- a/reactos/lib/sdk/crt/stdio/file.c +++ b/reactos/lib/sdk/crt/stdio/file.c @@ -1170,19 +1170,10 @@ int CDECL _fseeki64(FILE* file, __int64 offset, int whence) flush_buffer(file); if(whence == SEEK_CUR && file->_flag & _IOREAD ) { - offset -= file->_cnt; - if (get_ioinfo(file->_file)->wxflag & WX_TEXT) { - /* Black magic correction for CR removal */ - int i; - for (i=0; i_cnt; i++) { - if (file->_ptr[i] == '\n') - offset--; - } - /* Black magic when reading CR at buffer boundary*/ - if(get_ioinfo(file->_file)->wxflag & WX_READCR) - offset--; - } + whence = SEEK_SET; + offset += _ftelli64(file); } + /* Discard buffered input */ file->_cnt = 0; file->_ptr = file->_base;