aboutsummaryrefslogtreecommitdiffstats
path: root/src/eval.c
diff options
context:
space:
mode:
authorKim F. Storm2005-04-03 22:08:58 +0000
committerKim F. Storm2005-04-03 22:08:58 +0000
commitfff3ff9c18075000c0cf478fe76011769cdf027a (patch)
tree1e86459df73097db42f22fa49a05fc43b0318612 /src/eval.c
parent2ba613a6aae7549399043fb350ef61710f792e57 (diff)
downloademacs-fff3ff9c18075000c0cf478fe76011769cdf027a.tar.gz
emacs-fff3ff9c18075000c0cf478fe76011769cdf027a.zip
(Ffuncall): Always call CHECK_CONS_LIST on entry.
Call it again after autoload.
Diffstat (limited to 'src/eval.c')
-rw-r--r--src/eval.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/eval.c b/src/eval.c
index bf4fec4f8a1..8700ca222ce 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -2742,6 +2742,8 @@ usage: (funcall FUNCTION &rest ARGUMENTS) */)
2742 if (debug_on_next_call) 2742 if (debug_on_next_call)
2743 do_debug_on_call (Qlambda); 2743 do_debug_on_call (Qlambda);
2744 2744
2745 CHECK_CONS_LIST ();
2746
2745 retry: 2747 retry:
2746 2748
2747 fun = args[0]; 2749 fun = args[0];
@@ -2750,9 +2752,7 @@ usage: (funcall FUNCTION &rest ARGUMENTS) */)
2750 2752
2751 if (SUBRP (fun)) 2753 if (SUBRP (fun))
2752 { 2754 {
2753 CHECK_CONS_LIST (); 2755 if (numargs < XSUBR (fun)->min_args
2754
2755 if (numargs < XSUBR (fun)->min_args
2756 || (XSUBR (fun)->max_args >= 0 && XSUBR (fun)->max_args < numargs)) 2756 || (XSUBR (fun)->max_args >= 0 && XSUBR (fun)->max_args < numargs))
2757 { 2757 {
2758 XSETFASTINT (lisp_numargs, numargs); 2758 XSETFASTINT (lisp_numargs, numargs);
@@ -2844,6 +2844,7 @@ usage: (funcall FUNCTION &rest ARGUMENTS) */)
2844 else if (EQ (funcar, Qautoload)) 2844 else if (EQ (funcar, Qautoload))
2845 { 2845 {
2846 do_autoload (fun, args[0]); 2846 do_autoload (fun, args[0]);
2847 CHECK_CONS_LIST ();
2847 goto retry; 2848 goto retry;
2848 } 2849 }
2849 else 2850 else