summaryrefslogtreecommitdiff
path: root/libguile/frames.c
diff options
context:
space:
mode:
Diffstat (limited to 'libguile/frames.c')
-rw-r--r--libguile/frames.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libguile/frames.c b/libguile/frames.c
index 448a0cbbe..b2973bf67 100644
--- a/libguile/frames.c
+++ b/libguile/frames.c
@@ -334,7 +334,8 @@ SCM_DEFINE (scm_frame_previous, "frame-previous", 1, 0, 0,
SCM_VM_FRAME_OFFSET (frame));
proc = scm_frame_procedure (frame);
- if (SCM_PROGRAM_P (proc) && SCM_PROGRAM_IS_BOOT (proc))
+ if ((SCM_PROGRAM_P (proc) || SCM_RTL_PROGRAM_P (proc))
+ && SCM_PROGRAM_IS_BOOT (proc))
goto again;
else
return frame;