mldonkey-commits
[Top][All Lists]
Advanced

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

[Mldonkey-commits] mldonkey distrib/ChangeLog src/daemon/common/co...


From: mldonkey-commits
Subject: [Mldonkey-commits] mldonkey distrib/ChangeLog src/daemon/common/co...
Date: Tue, 03 Apr 2007 21:51:58 +0000

CVSROOT:        /sources/mldonkey
Module name:    mldonkey
Changes by:     spiralvoice <spiralvoice>       07/04/03 21:51:58

Modified files:
        distrib        : ChangeLog 
        src/daemon/common: commonInteractive.ml 

Log message:
        patch #5821

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/mldonkey/distrib/ChangeLog?cvsroot=mldonkey&r1=1.1222&r2=1.1223
http://cvs.savannah.gnu.org/viewcvs/mldonkey/src/daemon/common/commonInteractive.ml?cvsroot=mldonkey&r1=1.93&r2=1.94

Patches:
Index: distrib/ChangeLog
===================================================================
RCS file: /sources/mldonkey/mldonkey/distrib/ChangeLog,v
retrieving revision 1.1222
retrieving revision 1.1223
diff -u -b -r1.1222 -r1.1223
--- distrib/ChangeLog   3 Apr 2007 18:52:35 -0000       1.1222
+++ distrib/ChangeLog   3 Apr 2007 21:51:58 -0000       1.1223
@@ -15,6 +15,8 @@
 =========
 
 2007/04/03
+5821: New variables for file_completed_cmd:
+      file_group_cnt, file_group_user, file_group_dir
 5849: EDK: Report correct short versions for Windows clients
 
 2007/04/02

Index: src/daemon/common/commonInteractive.ml
===================================================================
RCS file: /sources/mldonkey/mldonkey/src/daemon/common/commonInteractive.ml,v
retrieving revision 1.93
retrieving revision 1.94
diff -u -b -r1.93 -r1.94
--- src/daemon/common/commonInteractive.ml      2 Apr 2007 19:45:46 -0000       
1.93
+++ src/daemon/common/commonInteractive.ml      3 Apr 2007 21:51:58 -0000       
1.94
@@ -163,6 +163,22 @@
   in
   let network = network_find_by_num info.G.file_network in
   let filename = Filename.basename new_name in
+  let file_group_info =
+    match file_group file with
+    | None -> 0, []
+    | Some _ ->
+      let users = ref [] in
+      let counter = ref 0 in
+      user2_users_iter (fun u ->
+        if file_owner file <> u &&
+          user2_can_view_file u (file_owner file) (file_group file) then
+            begin
+              incr counter;
+              users :=  (Printf.sprintf "FILE_GROUP_USER_%d" !counter, 
u.user_name) ::
+                        (Printf.sprintf "FILE_GROUP_DIR_%d" !counter, 
u.user_commit_dir) :: !users
+            end);
+      !counter, !users
+  in
   begin try
   MlUnix.fork_and_exec !!file_completed_cmd
       [|  (* keep those for compatibility *)
@@ -171,7 +187,7 @@
       size; (* $2 *)
       filename (* $3 *)
     |]
-     ~vars:[("TEMPNAME",  temp_name);
+     ~vars:([("TEMPNAME",  temp_name);
            ("FILEID",    file_id);
            ("FILESIZE",  size);
            ("FILENAME",  filename);
@@ -187,7 +203,9 @@
                               (file_owner file).user_mail
                             else
                               if !!mail <> "" then !!mail else ""));
+           ("FILE_GROUP_CNT", string_of_int (fst (file_group_info)));
            ]
+            @ snd (file_group_info))
 
   with e -> 
       lprintf_nl "Exception %s while executing %s"




reply via email to

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