From: Richard M. Stallman Date: Sat, 2 Sep 1995 01:21:55 +0000 (+0000) Subject: (Fmake_symbolic_link, Fadd_name_to_file): X-Git-Tag: emacs-19.34~2875 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=adc6741c3f1c5c187770879975115848878201b5;p=emacs.git (Fmake_symbolic_link, Fadd_name_to_file): Look for handler for the new name as well as for the target. --- diff --git a/src/fileio.c b/src/fileio.c index d58a15041c9..cd2e9bbfe0f 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -2124,6 +2124,13 @@ This is what happens in interactive use with M-x.") RETURN_UNGCPRO (call4 (handler, Qadd_name_to_file, filename, newname, ok_if_already_exists)); + /* If the new name has special constructs in it, + call the corresponding file handler. */ + handler = Ffind_file_name_handler (newname, Qadd_name_to_file); + if (!NILP (handler)) + RETURN_UNGCPRO (call4 (handler, Qadd_name_to_file, filename, + newname, ok_if_already_exists)); + if (NILP (ok_if_already_exists) || INTEGERP (ok_if_already_exists)) barf_or_query_if_file_exists (newname, "make it a new name", @@ -2184,6 +2191,13 @@ This happens for interactive use with M-x.") RETURN_UNGCPRO (call4 (handler, Qmake_symbolic_link, filename, linkname, ok_if_already_exists)); + /* If the new link name has special constructs in it, + call the corresponding file handler. */ + handler = Ffind_file_name_handler (linkname, Qmake_symbolic_link); + if (!NILP (handler)) + RETURN_UNGCPRO (call4 (handler, Qmake_symbolic_link, filename, + linkname, ok_if_already_exists)); + if (NILP (ok_if_already_exists) || INTEGERP (ok_if_already_exists)) barf_or_query_if_file_exists (linkname, "make it a link",