Index: src/libchcore/TOverlappedWriterFB.h =================================================================== diff -u -r734408890246965d47e6bbf2c2978371269dd1fd -rc0d9a798f9fbbeda239b84721ed864f9727e1ddc --- src/libchcore/TOverlappedWriterFB.h (.../TOverlappedWriterFB.h) (revision 734408890246965d47e6bbf2c2978371269dd1fd) +++ src/libchcore/TOverlappedWriterFB.h (.../TOverlappedWriterFB.h) (revision c0d9a798f9fbbeda239b84721ed864f9727e1ddc) @@ -35,13 +35,15 @@ TOverlappedWriterPtr GetWriter() const { return m_spWriter; } - TSubTaskBase::ESubOperationResult OnWritePossible(bool& bStopProcessing, bool& bProcessedFlag); - TSubTaskBase::ESubOperationResult OnWriteFailed(bool& bStopProcessing, bool& bProcessedFlag); - TSubTaskBase::ESubOperationResult OnWriteFinished(bool& bStopProcessing, bool& bProcessedFlag); + void SetReleaseMode() { m_bReleaseMode = true; } + TSubTaskBase::ESubOperationResult OnWritePossible(); + TSubTaskBase::ESubOperationResult OnWriteFailed(); + TSubTaskBase::ESubOperationResult OnWriteFinished(bool& bStopProcessing); + private: - void AdjustProcessedSize(file_size_t fsWritten); - void AdjustFinalSize(); + TSubTaskBase::ESubOperationResult AdjustProcessedSize(file_size_t fsWritten); + TSubTaskBase::ESubOperationResult AdjustFinalSize(); private: TOverlappedWriterPtr m_spWriter; @@ -51,6 +53,7 @@ TFileInfoPtr m_spSrcFileInfo; TFileInfoPtr m_spDstFileInfo; TBufferListPtr m_spEmptyBuffers; + bool m_bReleaseMode = false; }; using TOverlappedWriterFBPtr = std::shared_ptr;