Index: src/libchcore/TOverlappedReaderFB.cpp =================================================================== diff -u -N -r980c1a0de537813728871676200a0960410b11fb -re7ca9e2c6306cd94e5e5caecc9cfdb3b562d3cdf --- src/libchcore/TOverlappedReaderFB.cpp (.../TOverlappedReaderFB.cpp) (revision 980c1a0de537813728871676200a0960410b11fb) +++ src/libchcore/TOverlappedReaderFB.cpp (.../TOverlappedReaderFB.cpp) (revision e7ca9e2c6306cd94e5e5caecc9cfdb3b562d3cdf) @@ -85,7 +85,10 @@ bool bSkip = false; TSubTaskBase::ESubOperationResult eResult = m_spSrcFile->HandleReadError(*pBuffer, bSkip); if(eResult == TSubTaskBase::eSubResult_Retry) + { + m_spSrcFile->Close(); m_spReader->AddEmptyBuffer(pBuffer, true); + } else if(eResult != TSubTaskBase::eSubResult_Continue) { m_spReader->AddEmptyBuffer(pBuffer, false);