diff options
author | Gerd Moellmann <gerd@gnu.org> | 2000-07-07 10:23:51 +0000 |
---|---|---|
committer | Gerd Moellmann <gerd@gnu.org> | 2000-07-07 10:23:51 +0000 |
commit | 090a072fc19d89419186471ba7e5249eb04a7070 (patch) | |
tree | 2c1471a9962ab3ef08ea9a4703d9a89e56871b50 /src/eval.c | |
parent | d7e1fe1f9eb8e77a9e6f432570ef0a089b5a59d9 (diff) | |
download | emacs-090a072fc19d89419186471ba7e5249eb04a7070.tar.gz |
(Fsignal): Handle case that backtrace_list is null.
Diffstat (limited to 'src/eval.c')
-rw-r--r-- | src/eval.c | 13 |
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'.") /* Remember from where signal was called. Skip over the frame for `signal' itself. If a frame for `error' follows, skip that, too. */ - bp = backtrace_list->next; - if (bp && bp->function && EQ (*bp->function, Qerror)) - bp = bp->next; - Vsignaling_function = bp && bp->function ? *bp->function : Qnil; + Vsignaling_function = Qnil; + if (backtrace_list) + { + bp = backtrace_list->next; + if (bp && bp->function && EQ (*bp->function, Qerror)) + bp = bp->next; + if (bp && bp->function) + Vsignaling_function = *bp->function; + } for (; handlerlist; handlerlist = handlerlist->next) { |