diff options
| author | 2008-03-07 11:44:20 +0000 | |
|---|---|---|
| committer | 2008-03-07 11:44:20 +0000 | |
| commit | 5050ad847039a6b7c8531f4ead07187f169b66ae (patch) | |
| tree | be5d64e2bb150bddd6cbb2675d418b465babf967 /src/modules/dcc/send.cpp | |
| parent | quick fix (diff) | |
| download | KVIrc-5050ad847039a6b7c8531f4ead07187f169b66ae.tar.gz KVIrc-5050ad847039a6b7c8531f4ead07187f169b66ae.tar.bz2 KVIrc-5050ad847039a6b7c8531f4ead07187f169b66ae.zip | |
Fixed a bug in dcc send related to bandwidth limiting
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@1193 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src/modules/dcc/send.cpp')
| -rw-r--r-- | src/modules/dcc/send.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/modules/dcc/send.cpp b/src/modules/dcc/send.cpp index 19f907da3..2e3de6de7 100644 --- a/src/modules/dcc/send.cpp +++ b/src/modules/dcc/send.cpp @@ -135,8 +135,10 @@ void KviDccRecvThread::updateStats() m_pMutex->lock(); unsigned long uElapsedTime = uCurTime - m_uStartTime; if(uElapsedTime < 1)uElapsedTime = 1; + m_iFilePosition = m_pFile->at(); m_iAverageSpeed = m_iTotalReceivedBytes / uElapsedTime; + if(m_uInstantSpeedInterval > INSTANT_BANDWIDTH_CHECK_INTERVAL_IN_MSECS) { unsigned int uMSecsOfTheNextInterval = 0; @@ -332,6 +334,8 @@ void KviDccRecvThread::run() if(!handleInvalidSocketRead(readLen))break; } } else { + updateStats(); + // reached the bandwidth limit: slow down a bit if(m_uInstantSpeedInterval < (INSTANT_BANDWIDTH_CHECK_INTERVAL_IN_MSECS - 100)) msleep(100); @@ -373,6 +377,7 @@ void KviDccRecvThread::run() // include the artificial delay if needed if(m_pOpt->iIdleStepLengthInMSec > 0) { + debug("LOOP: artificial delay"); msleep(m_pOpt->iIdleStepLengthInMSec); } } else { |
