diff options
| author | Miles Bader | 2005-06-06 02:39:45 +0000 |
|---|---|---|
| committer | Miles Bader | 2005-06-06 02:39:45 +0000 |
| commit | fdffd346262841cb194225ea0acd8059c57ec2d4 (patch) | |
| tree | d8b3699131f7d1b94bc46c7d8be62af6b8b5ebfe /src/eval.c | |
| parent | a5c508fe3a3f456c987283156315d0384d38fe9e (diff) | |
| parent | a9b4333620eb259e974445066a8e64cee0c21d69 (diff) | |
| download | emacs-fdffd346262841cb194225ea0acd8059c57ec2d4.tar.gz emacs-fdffd346262841cb194225ea0acd8059c57ec2d4.zip | |
Revision: miles@gnu.org--gnu-2005/emacs--unicode--0--patch-57
Merge from emacs--cvs-trunk--0
Patches applied:
* emacs--cvs-trunk--0 (patch 324-352)
- Merge from gnus--rel--5.10
- Update from CVS
- etc/emacs-buffer.gdb: Remove RCS keywords
* gnus--rel--5.10 (patch 70-79)
- Update from CVS
- Merge from emacs--cvs-trunk--0
Diffstat (limited to 'src/eval.c')
| -rw-r--r-- | src/eval.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/eval.c b/src/eval.c index 7f043daa555..0eb1482ee0b 100644 --- a/src/eval.c +++ b/src/eval.c | |||
| @@ -2292,7 +2292,7 @@ static Lisp_Object run_hook_with_args P_ ((int, Lisp_Object *, | |||
| 2292 | enum run_hooks_condition)); | 2292 | enum run_hooks_condition)); |
| 2293 | 2293 | ||
| 2294 | DEFUN ("run-hooks", Frun_hooks, Srun_hooks, 0, MANY, 0, | 2294 | DEFUN ("run-hooks", Frun_hooks, Srun_hooks, 0, MANY, 0, |
| 2295 | doc: /* Run each hook in HOOKS. Major mode functions use this. | 2295 | doc: /* Run each hook in HOOKS. |
| 2296 | Each argument should be a symbol, a hook variable. | 2296 | Each argument should be a symbol, a hook variable. |
| 2297 | These symbols are processed in the order specified. | 2297 | These symbols are processed in the order specified. |
| 2298 | If a hook symbol has a non-nil value, that value may be a function | 2298 | If a hook symbol has a non-nil value, that value may be a function |
| @@ -2300,6 +2300,9 @@ or a list of functions to be called to run the hook. | |||
| 2300 | If the value is a function, it is called with no arguments. | 2300 | If the value is a function, it is called with no arguments. |
| 2301 | If it is a list, the elements are called, in order, with no arguments. | 2301 | If it is a list, the elements are called, in order, with no arguments. |
| 2302 | 2302 | ||
| 2303 | Major modes should not use this function directly to run their mode | ||
| 2304 | hook; they should use `run-mode-hooks' instead. | ||
| 2305 | |||
| 2303 | Do not use `make-local-variable' to make a hook variable buffer-local. | 2306 | Do not use `make-local-variable' to make a hook variable buffer-local. |
| 2304 | Instead, use `add-hook' and specify t for the LOCAL argument. | 2307 | Instead, use `add-hook' and specify t for the LOCAL argument. |
| 2305 | usage: (run-hooks &rest HOOKS) */) | 2308 | usage: (run-hooks &rest HOOKS) */) |
| @@ -3127,10 +3130,10 @@ unbind_to (count, value) | |||
| 3127 | int count; | 3130 | int count; |
| 3128 | Lisp_Object value; | 3131 | Lisp_Object value; |
| 3129 | { | 3132 | { |
| 3130 | int quitf = !NILP (Vquit_flag); | 3133 | Lisp_Object quitf = Vquit_flag; |
| 3131 | struct gcpro gcpro1; | 3134 | struct gcpro gcpro1, gcpro2; |
| 3132 | 3135 | ||
| 3133 | GCPRO1 (value); | 3136 | GCPRO2 (value, quitf); |
| 3134 | Vquit_flag = Qnil; | 3137 | Vquit_flag = Qnil; |
| 3135 | 3138 | ||
| 3136 | while (specpdl_ptr != specpdl + count) | 3139 | while (specpdl_ptr != specpdl + count) |
| @@ -3179,8 +3182,8 @@ unbind_to (count, value) | |||
| 3179 | } | 3182 | } |
| 3180 | } | 3183 | } |
| 3181 | 3184 | ||
| 3182 | if (NILP (Vquit_flag) && quitf) | 3185 | if (NILP (Vquit_flag) && !NILP (quitf)) |
| 3183 | Vquit_flag = Qt; | 3186 | Vquit_flag = quitf; |
| 3184 | 3187 | ||
| 3185 | UNGCPRO; | 3188 | UNGCPRO; |
| 3186 | return value; | 3189 | return value; |