mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-01-14 16:50:58 +00:00
(Fload): Forward all 4 args to magic-name handler.
(syms_of_lread): Set up Qload. (Fload): Handle magic file names.
This commit is contained in:
parent
e98dda8986
commit
c2225d0026
20
src/lread.c
20
src/lread.c
@ -52,7 +52,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
|
||||
|
||||
Lisp_Object Qread_char, Qget_file_char, Qstandard_input, Qcurrent_load_list;
|
||||
Lisp_Object Qvariable_documentation, Vvalues, Vstandard_input, Vafter_load_alist;
|
||||
Lisp_Object Qascii_character;
|
||||
Lisp_Object Qascii_character, Qload;
|
||||
|
||||
extern Lisp_Object Qevent_symbol_element_mask;
|
||||
|
||||
@ -318,10 +318,25 @@ Return t if file exists.")
|
||||
Lisp_Object found;
|
||||
/* 1 means inhibit the message at the beginning. */
|
||||
int nomessage1 = 0;
|
||||
Lisp_Object handler;
|
||||
|
||||
CHECK_STRING (str, 0);
|
||||
str = Fsubstitute_in_file_name (str);
|
||||
|
||||
/* If file name is magic, call the handler. */
|
||||
handler = Ffind_file_name_handler (str);
|
||||
if (!NILP (handler))
|
||||
{
|
||||
Lisp_Object args[6];
|
||||
args[0] = handler;
|
||||
args[1] = Qload;
|
||||
args[2] = str;
|
||||
args[3] = noerror;
|
||||
args[4] = nomessage;
|
||||
args[5] = nosuffix;
|
||||
return Ffuncall (6, args);
|
||||
}
|
||||
|
||||
/* Avoid weird lossage with null string as arg,
|
||||
since it would try to load a directory as a Lisp file */
|
||||
if (XSTRING (str)->size > 0)
|
||||
@ -1893,4 +1908,7 @@ or variables, and cons cells `(provide . FEATURE)' and `(require . FEATURE)'.");
|
||||
|
||||
Qascii_character = intern ("ascii-character");
|
||||
staticpro (&Qascii_character);
|
||||
|
||||
Qload = intern ("load");
|
||||
staticpro (&Qload);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user