mldonkey-commits
[Top][All Lists]
Advanced

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

[Mldonkey-commits] mldonkey distrib/ChangeLog src/networks/direct_...


From: mldonkey-commits
Subject: [Mldonkey-commits] mldonkey distrib/ChangeLog src/networks/direct_...
Date: Wed, 22 Sep 2010 19:19:56 +0000

CVSROOT:        /sources/mldonkey
Module name:    mldonkey
Changes by:     spiralvoice <spiralvoice>       10/09/22 19:19:56

Modified files:
        distrib        : ChangeLog 
        src/networks/direct_connect: dcClients.ml dcShared.ml 

Log message:
        patch #7308

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/mldonkey/distrib/ChangeLog?cvsroot=mldonkey&r1=1.1477&r2=1.1478
http://cvs.savannah.gnu.org/viewcvs/mldonkey/src/networks/direct_connect/dcClients.ml?cvsroot=mldonkey&r1=1.19&r2=1.20
http://cvs.savannah.gnu.org/viewcvs/mldonkey/src/networks/direct_connect/dcShared.ml?cvsroot=mldonkey&r1=1.7&r2=1.8

Patches:
Index: distrib/ChangeLog
===================================================================
RCS file: /sources/mldonkey/mldonkey/distrib/ChangeLog,v
retrieving revision 1.1477
retrieving revision 1.1478
diff -u -b -r1.1477 -r1.1478
--- distrib/ChangeLog   16 Sep 2010 19:17:04 -0000      1.1477
+++ distrib/ChangeLog   22 Sep 2010 19:19:55 -0000      1.1478
@@ -14,6 +14,9 @@
 ChangeLog
 =========
 
+2010/09/22
+7308: DC: bugfix (generate valid partial list) (ygrek)
+
 2010/09/16
 7144: Update clean targets
 

Index: src/networks/direct_connect/dcClients.ml
===================================================================
RCS file: /sources/mldonkey/mldonkey/src/networks/direct_connect/dcClients.ml,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -b -r1.19 -r1.20
--- src/networks/direct_connect/dcClients.ml    8 Sep 2010 16:31:50 -0000       
1.19
+++ src/networks/direct_connect/dcClients.ml    22 Sep 2010 19:19:55 -0000      
1.20
@@ -945,7 +945,7 @@
             with exn -> failwith (Printf.sprintf "PartialList %s : %s" dir 
(Printexc2.to_string exn))
           in 
           let filename = Filename.concat directconnect_directory
-            (DcGlobals.safe_filename (Printf.sprintf "mylist.%s.partial.xml" 
(clients_username c)))
+            (Printf.sprintf "mylist.%s.partial.xml.bz2" 
(DcGlobals.safe_filename (clients_username c)))
           in
           DcShared.buffer_to_bz2_to_file mylist filename;
           c.client_state <- DcUploadListStarting filename;

Index: src/networks/direct_connect/dcShared.ml
===================================================================
RCS file: /sources/mldonkey/mldonkey/src/networks/direct_connect/dcShared.ml,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- src/networks/direct_connect/dcShared.ml     8 Sep 2010 16:31:50 -0000       
1.7
+++ src/networks/direct_connect/dcShared.ml     22 Sep 2010 19:19:55 -0000      
1.8
@@ -81,29 +81,23 @@
   Printf.bprintf buf "<?xml version=\"1.0\" encoding=\"utf-8\" 
standalone=\"yes\"?>\r\n";
   Printf.bprintf buf "<FileListing Version=\"1\" CID=\"1,0,2,3,4,5,6\" 
Base=\"/\" Generator=\"MLDC-%s\">\r\n" (Xml.escape Autoconf.current_version);
   let rec iter ntabs node =
-    let dirname = node.shared_dirname in
-    let ntabs =
-      if dirname = "" then ntabs else begin
         buf_tabs buf ntabs;
-        let dir = dirname in
-        Printf.bprintf buf "<Directory Name=\"%s\">\r\n" (Xml.escape dir);
-        ntabs+1
-      end
-    in
+    Printf.bprintf buf "<Directory Name=\"%s\">\r\n" (Xml.escape 
node.shared_dirname);
     List.iter (fun dcsh ->
-      buf_tabs buf ntabs;
+      buf_tabs buf (ntabs + 1);
       let fname = Filename2.basename dcsh.dc_shared_codedname in
       Printf.bprintf buf "<File Name=\"%s\" Size=\"%Ld\" TTH=\"%s\"/>\r\n" 
(Xml.escape fname)
         dcsh.dc_shared_size (Xml.escape dcsh.dc_shared_tiger_root)
     ) node.shared_files;
-    List.iter (fun (_, node) ->
-        iter ntabs node;
+    List.iter (fun (_, node) -> iter (ntabs+1) node) node.shared_dirs;
         buf_tabs buf ntabs;
         Printf.bprintf buf "</Directory>\r\n"
-    ) node.shared_dirs
   in
+  if root.shared_dirname = "" then 
+    List.iter (fun (_,node) -> iter 0 node) root.shared_dirs
+  else 
   iter 0 root;
-  Printf.bprintf buf "</FileListing>";
+  Printf.bprintf buf "</FileListing>\r\n";
   buf
 
 let file_to_che3_to_string filename = 



reply via email to

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