# HG changeset patch # User Richard M. Stallman # Date 756611591 0 # Node ID 4a9b93b0eac3dc23bc0b503a209c01641b850ab0 # Parent c0bd549865505ddefec810dc758a97e9eb9bacf0 (Fmake_symbolic_link): Do expand FILENAME if starts with ~. (Fread_file_name): If defalt is nil and user tries to use it, signal an error. diff -r c0bd54986550 -r 4a9b93b0eac3 src/fileio.c --- a/src/fileio.c Thu Dec 23 01:43:11 1993 +0000 +++ b/src/fileio.c Thu Dec 23 01:53:11 1993 +0000 @@ -1885,9 +1885,11 @@ GCPRO2 (filename, linkname); CHECK_STRING (filename, 0); CHECK_STRING (linkname, 1); -#if 0 /* This made it impossible to make a link to a relative name. */ - filename = Fexpand_file_name (filename, Qnil); -#endif + /* If the link target has a ~, we must expand it to get + a truly valid file name. Otherwise, do not expand; + we want to permit links to relative file names. */ + if (XSTRING (filename)->data[0] == '~') + filename = Fexpand_file_name (filename, Qnil); linkname = Fexpand_file_name (linkname, Qnil); /* If the file name has special constructs in it, @@ -3431,7 +3433,12 @@ if (!NILP (tem) && !NILP (defalt)) return defalt; if (XSTRING (val)->size == 0 && NILP (insdef)) - return defalt; + { + if (!NILP (defalt)) + return defalt; + else + error ("No default file name"); + } return Fsubstitute_in_file_name (val); }