Mercurial > emacs
changeset 873:0abaf590e0ca
entered into RCS
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sun, 26 Jul 1992 19:36:03 +0000 |
parents | 336ffe2bd537 |
children | b945f592b94d |
files | src/callint.c |
diffstat | 1 files changed, 12 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/callint.c Sat Jul 25 00:36:12 1992 +0000 +++ b/src/callint.c Sun Jul 26 19:36:03 1992 +0000 @@ -33,6 +33,7 @@ Lisp_Object Vcommand_history; Lisp_Object Vcommand_debug_status, Qcommand_debug_status; +Lisp_Object Qenable_recursive_minibuffers; /* This comment supplies the doc string for interactive, for make-docfile to see. We cannot put this in the real DEFUN @@ -156,6 +157,8 @@ Lisp_Object funcar; Lisp_Object specs; Lisp_Object teml; + Lisp_Object enable; + int speccount = specpdl_ptr - specpdl; Lisp_Object prefix_arg; unsigned char *string; @@ -179,6 +182,8 @@ retry: + enable = Fget (function, Qenable_recursive_minibuffers); + fun = indirect_function (function); specs = Qnil; @@ -299,6 +304,9 @@ gcpro3.nvars = (count + 1); gcpro4.nvars = (count + 1); + if (!NILP (enable)) + specbind (Qenable_recursive_minibuffers, Qt); + tem = string; for (i = 1; *tem; i++) { @@ -474,6 +482,7 @@ if (tem) tem++; else tem = (unsigned char *) ""; } + unbind_to (speccount, Qnil); QUIT; @@ -493,7 +502,6 @@ { Lisp_Object val; - int speccount = specpdl_ptr - specpdl; specbind (Qcommand_debug_status, Qnil); val = Ffuncall (count + 1, args); @@ -541,6 +549,9 @@ Qcommand_debug_status = intern ("command-debug-status"); staticpro (&Qcommand_debug_status); + Qenable_recursive_minibuffers = intern ("enable-recursive-minibuffers"); + staticpro (&Qenable_recursive_minibuffers); + DEFVAR_LISP ("prefix-arg", &Vprefix_arg, "The value of the prefix argument for the next editing command.\n\ It may be a number, or the symbol `-' for just a minus sign as arg,\n\