"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "volume.cpp" between
unrarsrc-6.1.3.tar.gz and unrarsrc-6.1.4.tar.gz

About: unrar extracts, views and tests the contents of archives created with the RAR archiver.

volume.cpp  (unrarsrc-6.1.3):volume.cpp  (unrarsrc-6.1.4)
skipping to change at line 46 skipping to change at line 46
wcsncpyz(NextName,Arc.FileName,ASIZE(NextName)); wcsncpyz(NextName,Arc.FileName,ASIZE(NextName));
NextVolumeName(NextName,ASIZE(NextName),!Arc.NewNumbering); NextVolumeName(NextName,ASIZE(NextName),!Arc.NewNumbering);
#if !defined(SFX_MODULE) && !defined(RARDLL) #if !defined(SFX_MODULE) && !defined(RARDLL)
bool RecoveryDone=false; bool RecoveryDone=false;
#endif #endif
bool OldSchemeTested=false; bool OldSchemeTested=false;
bool FailedOpen=false; // No more next volume open attempts if true. bool FailedOpen=false; // No more next volume open attempts if true.
#if !defined(SILENT) #if !defined(SILENT)
if (Cmd->VolumePause) // In -vp mode we force the pause before next volume even if it is present
{ // and even if we are on the hard disk. It is important when user does not
// If next volume can't be opened exclusively, it might be still // want to process partially downloaded volumes preliminary.
// downloading, so in -vp mode user may prefer to pause until completion // 2022.01.11: In WinRAR 6.10 beta versions we tried to ignore VolumePause
// even if volume is exist. FMF_OPENEXCLUSIVE works in Windows only. // if we could open the next volume with FMF_OPENEXCLUSIVE. But another
File TestOpen; // developer asked us to return the previous behavior and always prompt
if (!TestOpen.Open(NextName,FMF_OPENEXCLUSIVE) && !uiAskNextVolume(NextName, // for confirmation. They want to control when unrar continues, because
ASIZE(NextName))) // the next file might not be fully decoded yet. They write chunks of data
FailedOpen=true; // and then close the file again until the next chunk comes in.
}
if (Cmd->VolumePause && !uiAskNextVolume(NextName,ASIZE(NextName)))
FailedOpen=true;
#endif #endif
uint OpenMode = Cmd->OpenShared ? FMF_OPENSHARED : 0; uint OpenMode = Cmd->OpenShared ? FMF_OPENSHARED : 0;
if (!FailedOpen) if (!FailedOpen)
while (!Arc.Open(NextName,OpenMode)) while (!Arc.Open(NextName,OpenMode))
{ {
// We need to open a new volume which size was not calculated // We need to open a new volume which size was not calculated
// in total size before, so we cannot calculate the total progress // in total size before, so we cannot calculate the total progress
// anymore. Let's reset the total size to zero and stop // anymore. Let's reset the total size to zero and stop
 End of changes. 1 change blocks. 
10 lines changed or deleted 12 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)