Commit 1e0b36be authored by Stefan Monnier's avatar Stefan Monnier
Browse files

(Fcall_interactively): Use Finteractive_form.

parent c2f562ee
/* Call a Lisp function interactively. /* Call a Lisp function interactively.
Copyright (C) 1985, 86, 93, 94, 95, 1997, 2000, 02, 2003 Copyright (C) 1985, 86, 93, 94, 95, 1997, 2000, 02, 03, 2004
Free Software Foundation, Inc. Free Software Foundation, Inc.
This file is part of GNU Emacs. This file is part of GNU Emacs.
...@@ -347,25 +347,17 @@ supply if the command inquires which events were used to invoke it. */) ...@@ -347,25 +347,17 @@ supply if the command inquires which events were used to invoke it. */)
goto lose; goto lose;
specs = XVECTOR (fun)->contents[COMPILED_INTERACTIVE]; specs = XVECTOR (fun)->contents[COMPILED_INTERACTIVE];
} }
else if (!CONSP (fun)) else
goto lose;
else if (funcar = XCAR (fun), EQ (funcar, Qautoload))
{ {
Lisp_Object form;
GCPRO2 (function, prefix_arg); GCPRO2 (function, prefix_arg);
do_autoload (fun, function); Finteractive_form (function);
UNGCPRO; UNGCPRO;
goto retry; if (CONSP (form))
} specs = filter_specs = Fcar (XCDR (form));
else if (EQ (funcar, Qlambda))
{
specs = Fassq (Qinteractive, Fcdr (XCDR (fun)));
if (NILP (specs))
goto lose;
filter_specs = Fnth (make_number (1), specs);
specs = Fcar (Fcdr (specs));
}
else else
goto lose; goto lose;
}
/* If either SPECS or STRING is set to a string, use it. */ /* If either SPECS or STRING is set to a string, use it. */
if (STRINGP (specs)) if (STRINGP (specs))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment