Index: src/libchcore/TOverlappedWriterFB.cpp =================================================================== diff -u -N -r980c1a0de537813728871676200a0960410b11fb -re7ca9e2c6306cd94e5e5caecc9cfdb3b562d3cdf --- src/libchcore/TOverlappedWriterFB.cpp (.../TOverlappedWriterFB.cpp) (revision 980c1a0de537813728871676200a0960410b11fb) +++ src/libchcore/TOverlappedWriterFB.cpp (.../TOverlappedWriterFB.cpp) (revision e7ca9e2c6306cd94e5e5caecc9cfdb3b562d3cdf) @@ -97,7 +97,10 @@ bool bSkip = false; TSubTaskBase::ESubOperationResult eResult = m_spDstFile->HandleWriteError(*pBuffer, bSkip); if(eResult == TSubTaskBase::eSubResult_Retry) - m_spWriter->AddFailedWriteBuffer(pBuffer); + { + m_spDstFile->Close(); + m_spWriter->AddRetryBuffer(pBuffer); + } else if(eResult != TSubTaskBase::eSubResult_Continue) { m_spEmptyBuffers->Push(pBuffer);