mldonkey-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Mldonkey-commits] Changes to mldonkey/src/networks/bittorrent/bTClients


From: mldonkey-commits
Subject: [Mldonkey-commits] Changes to mldonkey/src/networks/bittorrent/bTClients.ml
Date: Wed, 14 Sep 2005 16:02:28 -0400

Index: mldonkey/src/networks/bittorrent/bTClients.ml
diff -u mldonkey/src/networks/bittorrent/bTClients.ml:1.51 
mldonkey/src/networks/bittorrent/bTClients.ml:1.52
--- mldonkey/src/networks/bittorrent/bTClients.ml:1.51  Wed Sep 14 14:35:44 2005
+++ mldonkey/src/networks/bittorrent/bTClients.ml       Wed Sep 14 20:02:26 2005
@@ -1452,7 +1452,6 @@
           c.client_allowed_to_write <- c.client_allowed_to_write -- len;
           count_upload c file len;
           let len = Int64.to_int len in
-          CommonUploads.consume_bandwidth len;
 (*          lprintf "Unix32.read: offset %Ld len %d\n" offset len; *)
           Unix32.read (file_fd file) offset upload_buffer 0 len;
           (* update upload rate from len bytes *)
@@ -1493,9 +1492,14 @@
       match c.client_upload_requests with
         [] -> ()
       | _ :: tail ->
-          CommonUploads.consume_bandwidth allowed;
-          c.client_allowed_to_write <-
-            c.client_allowed_to_write ++ (Int64.of_int allowed);
+         let new_allowed_to_write =
+           c.client_allowed_to_write ++ (Int64.of_int allowed) in
+           if allowed > 0 && CommonUploads.can_write_len sock
+                             (Int64.to_int new_allowed_to_write)
+           then begin
+             CommonUploads.consume_bandwidth allowed;
+             c.client_allowed_to_write <- new_allowed_to_write;
+           end;
           iter_upload sock c
   )
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]