blargg_err_t File_Extractor::open( File_Reader* input, const char* path ) { close(); RETURN_ERR( set_path( path ) ); RETURN_ERR( input->seek( 0 ) ); reader_ = input; blargg_err_t err = open_v(); if ( err ) close(); else opened_ = true; return err; }
blargg_err_t Gzip_Extractor::open_path_v() { // skip opening file return open_v(); }
blargg_err_t File_Extractor::open_path_v() { RETURN_ERR( open_arc_file() ); return open_v(); }
blargg_err_t Binary_Extractor::stat_v() { RETURN_ERR( open_arc_file() ); RETURN_ERR( arc().seek( 0 ) ); return open_v(); }