From 44da1bda00a9efde8487ca6d356a19299744e0b1 Mon Sep 17 00:00:00 2001 From: Chris Moeller Date: Fri, 4 Oct 2013 08:59:33 -0700 Subject: [PATCH] Fixed a serious bug with Std_File_Reader setting unbuffered mode --- Frameworks/File_Extractor/File_Extractor/fex/Data_Reader.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Frameworks/File_Extractor/File_Extractor/fex/Data_Reader.cpp b/Frameworks/File_Extractor/File_Extractor/fex/Data_Reader.cpp index a52038738..3d3387577 100644 --- a/Frameworks/File_Extractor/File_Extractor/fex/Data_Reader.cpp +++ b/Frameworks/File_Extractor/File_Extractor/fex/Data_Reader.cpp @@ -599,8 +599,10 @@ blargg_err_t Std_File_Reader::open( const char path [] ) void Std_File_Reader::make_unbuffered() { + long offset = ftell( STATIC_CAST(FILE*, file_) ); if ( setvbuf( STATIC_CAST(FILE*, file_), NULL, _IONBF, 0 ) ) check( false ); // shouldn't fail, but OK if it does + fseek( STATIC_CAST(FILE*, file_), offset, SEEK_SET ); } blargg_err_t Std_File_Reader::read_v( void* p, int s )