From adc6741c3f1c5c187770879975115848878201b5 Mon Sep 17 00:00:00 2001 From: "Richard M. Stallman" Date: Sat, 2 Sep 1995 01:21:55 +0000 Subject: [PATCH] (Fmake_symbolic_link, Fadd_name_to_file): Look for handler for the new name as well as for the target. --- src/fileio.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) 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", -- 2.39.2