aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/Makefile.dep2
-rw-r--r--src/lj_debug.c4
2 files changed, 4 insertions, 2 deletions
diff --git a/src/Makefile.dep b/src/Makefile.dep
index 9aefb236..738203b6 100644
--- a/src/Makefile.dep
+++ b/src/Makefile.dep
@@ -97,7 +97,7 @@ lj_ctype.o: lj_ctype.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
97 lj_ccallback.h 97 lj_ccallback.h
98lj_debug.o: lj_debug.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \ 98lj_debug.o: lj_debug.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
99 lj_err.h lj_errmsg.h lj_debug.h lj_buf.h lj_gc.h lj_str.h lj_tab.h \ 99 lj_err.h lj_errmsg.h lj_debug.h lj_buf.h lj_gc.h lj_str.h lj_tab.h \
100 lj_state.h lj_frame.h lj_bc.h lj_strfmt.h lj_jit.h lj_ir.h 100 lj_state.h lj_frame.h lj_bc.h lj_strfmt.h lj_vm.h lj_jit.h lj_ir.h
101lj_dispatch.o: lj_dispatch.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \ 101lj_dispatch.o: lj_dispatch.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \
102 lj_err.h lj_errmsg.h lj_buf.h lj_gc.h lj_str.h lj_func.h lj_tab.h \ 102 lj_err.h lj_errmsg.h lj_buf.h lj_gc.h lj_str.h lj_func.h lj_tab.h \
103 lj_meta.h lj_debug.h lj_state.h lj_frame.h lj_bc.h lj_ff.h lj_ffdef.h \ 103 lj_meta.h lj_debug.h lj_state.h lj_frame.h lj_bc.h lj_ff.h lj_ffdef.h \
diff --git a/src/lj_debug.c b/src/lj_debug.c
index 18074874..889ac017 100644
--- a/src/lj_debug.c
+++ b/src/lj_debug.c
@@ -15,6 +15,7 @@
15#include "lj_frame.h" 15#include "lj_frame.h"
16#include "lj_bc.h" 16#include "lj_bc.h"
17#include "lj_strfmt.h" 17#include "lj_strfmt.h"
18#include "lj_vm.h"
18#if LJ_HASJIT 19#if LJ_HASJIT
19#include "lj_jit.h" 20#include "lj_jit.h"
20#endif 21#endif
@@ -87,7 +88,8 @@ static BCPos debug_framepc(lua_State *L, GCfunc *fn, cTValue *nextframe)
87 if (frame_islua(f)) { 88 if (frame_islua(f)) {
88 f = frame_prevl(f); 89 f = frame_prevl(f);
89 } else { 90 } else {
90 if (frame_isc(f)) 91 if (frame_isc(f) || (LJ_HASFFI && frame_iscont(f) &&
92 (f-1)->u32.lo == LJ_CONT_FFI_CALLBACK))
91 cf = cframe_raw(cframe_prev(cf)); 93 cf = cframe_raw(cframe_prev(cf));
92 f = frame_prevd(f); 94 f = frame_prevd(f);
93 } 95 }