Index: src/daemon/common/commonFile.ml
===================================================================
RCS file: /sources/mldonkey/mldonkey/src/daemon/common/commonFile.ml,v
retrieving revision 1.46
diff -u -r1.46 commonFile.ml
--- src/daemon/common/commonFile.ml 14 Dec 2005 21:17:46 -0000 1.46
+++ src/daemon/common/commonFile.ml 2 Jan 2006 22:01:42 -0000
@@ -252,8 +252,20 @@
let set_file_best_name file name =
let file = as_file_impl file in
- let name = String2.replace name '/' "::" in
- file.impl_file_best_name <- name
+ let old_name = file.impl_file_best_name in
+ let real_name = Filename2.filesystem_compliant name "" in
+ if real_name = "" then
+ lprintf_nl () "can not rename file \"%s\" to \"%s\""
+ file.impl_file_best_name real_name
+ else begin
+ file.impl_file_best_name <- real_name;
+ if name <> real_name then
+ lprintf_nl () "wanted new name \"%s\" changed to \"%s\" due to system limitations"
+ (String.escaped name) (String.escaped file.impl_file_best_name);
+ if !verbose && old_name <> file.impl_file_best_name then
+ lprintf_nl () "best_name of \"%s\" changed to \"%s\""
+ (String.escaped old_name) (String.escaped file.impl_file_best_name)
+ end
let set_file_format (file : file) format =
let file = as_file_impl file in
Index: src/daemon/driver/driverCommands.ml
===================================================================
RCS file: /sources/mldonkey/mldonkey/src/daemon/driver/driverCommands.ml,v
retrieving revision 1.108
diff -u -r1.108 driverCommands.ml
--- src/daemon/driver/driverCommands.ml 1 Jan 2006 19:25:42 -0000 1.108
+++ src/daemon/driver/driverCommands.ml 2 Jan 2006 22:01:44 -0000
@@ -1992,9 +1992,7 @@
\\
\\ |
\\\\ (surround dir with quotes if necessary)','0 /home/mldonkey/share')
- var reg = new RegExp (' ', 'gi') ;
- var outstr = getdir.replace(reg, '+');
- parent.fstatus.location.href='submit?q=share+' + encodeURI(outstr);
+ parent.fstatus.location.href='submit?q=share+' + encodeURIComponent(getdir);
setTimeout('window.location.reload()',1000);
}\\\"\\>Add Share\\
\\ |
@@ -2662,8 +2660,8 @@
try
let file = file_find num in
set_file_best_name file new_name;
- Printf.sprintf (_b "Download %d renamed to %s") num new_name
- with _ -> Printf.sprintf (_b "No file number %d") num
+ Printf.sprintf (_b "Download %d renamed to %s") num (file_best_name file)
+ with e -> Printf.sprintf (_b "No file number %d, error %s") num (Printexc2.to_string e)
), " \"\" :\t\tchange name of download to ";
"dllink", Arg_multiple (fun args o ->
Index: src/networks/donkey/donkeyGlobals.ml
===================================================================
RCS file: /sources/mldonkey/mldonkey/src/networks/donkey/donkeyGlobals.ml,v
retrieving revision 1.65
diff -u -r1.65 donkeyGlobals.ml
--- src/networks/donkey/donkeyGlobals.ml 1 Jan 2006 19:27:07 -0000 1.65
+++ src/networks/donkey/donkeyGlobals.ml 2 Jan 2006 22:01:45 -0000
@@ -277,9 +277,7 @@
match impl.impl_file_probable_name with
None -> ()
| Some best_name ->
- let best_name = String2.replace best_name '/' "::" in
- set_file_best_name file best_name;
- if !verbose then lprintf_nl () "BEST NAME now IS %s" best_name;
+ set_file_best_name file best_name
with Not_found -> ()
let new_file file_diskname file_state md4 file_size filenames writable =
Index: src/networks/donkey/donkeyInteractive.ml
===================================================================
RCS file: /sources/mldonkey/mldonkey/src/networks/donkey/donkeyInteractive.ml,v
retrieving revision 1.78
diff -u -r1.78 donkeyInteractive.ml
--- src/networks/donkey/donkeyInteractive.ml 1 Jan 2006 19:27:07 -0000 1.78
+++ src/networks/donkey/donkeyInteractive.ml 2 Jan 2006 22:01:46 -0000
@@ -547,6 +547,13 @@
else
let md4 = if String.length md4 > 32 then
String.sub md4 0 32 else md4 in
+ let name =
+ let name2 = Filename2.filesystem_compliant name "" in
+ if name2 = "" then
+ Printf.sprintf "urn_ed2k_%s" md4
+ else
+ name2
+ in
begin try
let file = query_download [name] (Int64.of_string size)
(Md4.of_string md4) None None None false;
@@ -790,9 +797,7 @@
\\