Fixed handling Rar 5.x solid archives

CQTexperiment
Chris Moeller 2014-10-03 00:36:52 -07:00
parent 63d255db7d
commit 7115566476
1 changed files with 3 additions and 4 deletions

View File

@ -62,17 +62,16 @@ unrar_err_t CmdExtract::ExtractCurrentFile( bool SkipSolid, bool check_compatibi
Unp = new Unpack( &Arc );
if ( !Unp )
return unrar_err_memory;
Unp->Init(Arc.FileHead.WinSize,Arc.FileHead.Solid);
}
Unp->Init(Arc.FileHead.WinSize,Arc.FileHead.Solid);
Unp->SetDestSize(Arc.FileHead.UnpSize);
#ifndef SFX_MODULE
if (Arc.FileHead.UnpVer>=13 && Arc.FileHead.UnpVer<=15)
if (Arc.Format!=RARFMT50 && Arc.FileHead.UnpVer<=15)
Unp->DoUnpack(15,FileCount>1 && Arc.Solid);
else
#endif
Unp->DoUnpack(Arc.FileHead.UnpVer,!!(Arc.FileHead.Flags & LHD_SOLID));
Unp->DoUnpack(Arc.FileHead.UnpVer,Arc.FileHead.Solid);
}
// (no need to seek to next file)