aboutsummaryrefslogtreecommitdiffstats
path: root/src/eval.c
diff options
context:
space:
mode:
authorGerd Moellmann2000-07-07 10:23:51 +0000
committerGerd Moellmann2000-07-07 10:23:51 +0000
commit090a072fc19d89419186471ba7e5249eb04a7070 (patch)
tree2c1471a9962ab3ef08ea9a4703d9a89e56871b50 /src/eval.c
parentd7e1fe1f9eb8e77a9e6f432570ef0a089b5a59d9 (diff)
downloademacs-090a072fc19d89419186471ba7e5249eb04a7070.tar.gz
emacs-090a072fc19d89419186471ba7e5249eb04a7070.zip
(Fsignal): Handle case that backtrace_list is null.
Diffstat (limited to 'src/eval.c')
-rw-r--r--src/eval.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/eval.c b/src/eval.c
index 56842ac99f3..da63f9833a1 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -1328,10 +1328,15 @@ See also the function `condition-case'.")
1328 /* Remember from where signal was called. Skip over the frame for 1328 /* Remember from where signal was called. Skip over the frame for
1329 `signal' itself. If a frame for `error' follows, skip that, 1329 `signal' itself. If a frame for `error' follows, skip that,
1330 too. */ 1330 too. */
1331 bp = backtrace_list->next; 1331 Vsignaling_function = Qnil;
1332 if (bp && bp->function && EQ (*bp->function, Qerror)) 1332 if (backtrace_list)
1333 bp = bp->next; 1333 {
1334 Vsignaling_function = bp && bp->function ? *bp->function : Qnil; 1334 bp = backtrace_list->next;
1335 if (bp && bp->function && EQ (*bp->function, Qerror))
1336 bp = bp->next;
1337 if (bp && bp->function)
1338 Vsignaling_function = *bp->function;
1339 }
1335 1340
1336 for (; handlerlist; handlerlist = handlerlist->next) 1341 for (; handlerlist; handlerlist = handlerlist->next)
1337 { 1342 {