Index: src/libchcore/TSubTaskStatsInfo.cpp =================================================================== diff -u -N -r16df8fcf9d5b3317338aece64762771419beaf4a -rd5005ff4b983f42d7f0da94e5a562dabe1399f78 --- src/libchcore/TSubTaskStatsInfo.cpp (.../TSubTaskStatsInfo.cpp) (revision 16df8fcf9d5b3317338aece64762771419beaf4a) +++ src/libchcore/TSubTaskStatsInfo.cpp (.../TSubTaskStatsInfo.cpp) (revision d5005ff4b983f42d7f0da94e5a562dabe1399f78) @@ -144,7 +144,7 @@ { boost::unique_lock lock(m_lock); - m_tCountSpeed.Modify().AddSample(0/*fcProcessedCount - m_fcProcessedCount*/, m_tTimer.Modify().Tick()); + m_tCountSpeed.Modify().AddSample(fcProcessedCount > m_fcProcessedCount ? fcProcessedCount - m_fcProcessedCount : 0, m_tTimer.Modify().Tick()); m_fcProcessedCount = fcProcessedCount; @@ -191,7 +191,7 @@ { boost::unique_lock lock(m_lock); - m_tSizeSpeed.Modify().AddSample(0/*ullProcessedSize - m_ullProcessedSize*/, m_tTimer.Modify().Tick()); + m_tSizeSpeed.Modify().AddSample(ullProcessedSize > m_ullProcessedSize ? ullProcessedSize - m_ullProcessedSize : 0, m_tTimer.Modify().Tick()); m_ullProcessedSize = ullProcessedSize; _ASSERTE(m_ullProcessedSize <= m_ullTotalSize);