summaryrefslogtreecommitdiff
path: root/src/eval.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/eval.c')
-rw-r--r--src/eval.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/eval.c b/src/eval.c
index af3624efd85..91a98d6206d 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -1959,7 +1959,10 @@ run_hook_with_args (nargs, args, cond)
globals = XCONS (globals)->cdr)
{
args[0] = XCONS (globals)->car;
- ret = Ffuncall (nargs, args);
+ /* In a global value, t should not occur. If it does, we
+ must ignore it to avoid an endless loop. */
+ if (!EQ (args[0], Qt))
+ ret = Ffuncall (nargs, args);
}
}
else
@@ -2007,7 +2010,10 @@ run_hook_list_with_args (funlist, nargs, args)
globals = XCONS (globals)->cdr)
{
args[0] = XCONS (globals)->car;
- Ffuncall (nargs, args);
+ /* In a global value, t should not occur. If it does, we
+ must ignore it to avoid an endless loop. */
+ if (!EQ (args[0], Qt))
+ Ffuncall (nargs, args);
}
}
else