From 201a77f2fe52830e69f7920bd9cf4c282f018ffe Mon Sep 17 00:00:00 2001 From: Olivier Dufour Date: Thu, 9 Sep 2010 20:52:28 +0200 Subject: [PATCH] Fix download limitation when upload limiter is set: Only piece message is limitednot protocol message --- .../MonoTorrent.Client/Managers/ConnectionManager.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/MonoTorrent/MonoTorrent.Client/Managers/ConnectionManager.cs b/src/MonoTorrent/MonoTorrent.Client/Managers/ConnectionManager.cs index caa8c10e8..ff545b968 100644 --- a/src/MonoTorrent/MonoTorrent.Client/Managers/ConnectionManager.cs +++ b/src/MonoTorrent/MonoTorrent.Client/Managers/ConnectionManager.cs @@ -358,12 +358,15 @@ private void SendMessage(PeerId id, PeerMessage message, MessagingCallback callb id.CurrentlySendingMessage = message; RateLimiterGroup limiter = id.TorrentManager.UploadLimiter; - PeerIO.EnqueueSendMessage (id.Connection, id.Encryptor, message, limiter, id.Monitor, id.TorrentManager.Monitor, endSendMessageCallback, id); + if (message is PieceMessage) { + PeerIO.EnqueueSendMessage (id.Connection, id.Encryptor, message, limiter, id.Monitor, id.TorrentManager.Monitor, endSendMessageCallback, id); ClientEngine.BufferManager.FreeBuffer(ref ((PieceMessage)message).Data); id.IsRequestingPiecesCount--; } + else + PeerIO.EnqueueSendMessage (id.Connection, id.Encryptor, message, null, id.Monitor, id.TorrentManager.Monitor, endSendMessageCallback, id); } catch (Exception ex) {