karlheg(a)bittersweet.inetarena.com (Karl M. Hegbloom) writes:
With or without `-vanilla', if I go straight to the directory
where
the man pages are and use `dired-man-locally', it will crash. But if
I view a man page first, with `M-x man', or just `M-x load-library
man', then go there and use `l', it works fine.
(defun dired-man-locally ()
(interactive)
(if (= 1 (function-max-args #'manual-entry))
(manual-entry (concat (dired-get-filename) " -l"))
(manual-entry (dired-get-filename) "-l")))
One can trigger this crash by evaluating:
(function-max-args #'manual-entry)
in a vanilla xemacs with any function that is autoloaded.
function-max-args performs the autoloading but doesn't actually use
the function just loaded, instead it infloops on the autoload
definition.
This should fix it (21.2 only -- I'll send a 21.1 patch in a separate
mail.)
2000-08-06 Gunnar Evermann <ge204(a)eng.cam.ac.uk>
* eval.c (function_argcount): If function needs to be autoloaded
actually use the loaded definition.
--- src/eval.c~ Sun Aug 6 12:32:39 2000
+++ src/eval.c Sun Aug 6 20:58:36 2000
@@ -3651,6 +3651,7 @@
else if (EQ (funcar, Qautoload))
{
do_autoload (function, orig_function);
+ function = orig_function;
goto retry;
}
else if (EQ (funcar, Qlambda))