aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorStefan Monnier2004-03-29 00:49:00 +0000
committerStefan Monnier2004-03-29 00:49:00 +0000
commit1e0b36be0a4ca370d09e224f77afad571932cd83 (patch)
tree2c19e32afe707f9590f9dc0ca09ad7c123a370c5 /src
parentc2f562eefa10b969845844f3632c97064c5d39be (diff)
downloademacs-1e0b36be0a4ca370d09e224f77afad571932cd83.tar.gz
emacs-1e0b36be0a4ca370d09e224f77afad571932cd83.zip
(Fcall_interactively): Use Finteractive_form.
Diffstat (limited to 'src')
-rw-r--r--src/callint.c22
1 files changed, 7 insertions, 15 deletions
diff --git a/src/callint.c b/src/callint.c
index 21a6bd0b1ad..a7933bb14d5 100644
--- a/src/callint.c
+++ b/src/callint.c
@@ -1,5 +1,5 @@
1/* Call a Lisp function interactively. 1/* Call a Lisp function interactively.
2 Copyright (C) 1985, 86, 93, 94, 95, 1997, 2000, 02, 2003 2 Copyright (C) 1985, 86, 93, 94, 95, 1997, 2000, 02, 03, 2004
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
@@ -347,25 +347,17 @@ supply if the command inquires which events were used to invoke it. */)
347 goto lose; 347 goto lose;
348 specs = XVECTOR (fun)->contents[COMPILED_INTERACTIVE]; 348 specs = XVECTOR (fun)->contents[COMPILED_INTERACTIVE];
349 } 349 }
350 else if (!CONSP (fun)) 350 else
351 goto lose;
352 else if (funcar = XCAR (fun), EQ (funcar, Qautoload))
353 { 351 {
352 Lisp_Object form;
354 GCPRO2 (function, prefix_arg); 353 GCPRO2 (function, prefix_arg);
355 do_autoload (fun, function); 354 Finteractive_form (function);
356 UNGCPRO; 355 UNGCPRO;
357 goto retry; 356 if (CONSP (form))
358 } 357 specs = filter_specs = Fcar (XCDR (form));
359 else if (EQ (funcar, Qlambda)) 358 else
360 {
361 specs = Fassq (Qinteractive, Fcdr (XCDR (fun)));
362 if (NILP (specs))
363 goto lose; 359 goto lose;
364 filter_specs = Fnth (make_number (1), specs);
365 specs = Fcar (Fcdr (specs));
366 } 360 }
367 else
368 goto lose;
369 361
370 /* If either SPECS or STRING is set to a string, use it. */ 362 /* If either SPECS or STRING is set to a string, use it. */
371 if (STRINGP (specs)) 363 if (STRINGP (specs))