summaryrefslogtreecommitdiff
path: root/vm_dump.c
diff options
context:
space:
mode:
Diffstat (limited to 'vm_dump.c')
-rw-r--r--vm_dump.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/vm_dump.c b/vm_dump.c
index bb2b2415c4..a65542b0f8 100644
--- a/vm_dump.c
+++ b/vm_dump.c
@@ -13,6 +13,7 @@
#include "addr2line.h"
#include "vm_core.h"
#include "internal.h"
+#include "iseq.h"
/* see vm_insnhelper.h for the values */
#ifndef VMDEBUG
@@ -359,7 +360,6 @@ rb_vmdebug_debug_print_pre(rb_thread_t *th, rb_control_frame_t *cfp,VALUE *_pc)
rb_iseq_t *iseq = cfp->iseq;
if (iseq != 0) {
- VALUE *seq = iseq->iseq;
ptrdiff_t pc = _pc - iseq->iseq_encoded;
int i;
@@ -371,7 +371,9 @@ rb_vmdebug_debug_print_pre(rb_thread_t *th, rb_control_frame_t *cfp,VALUE *_pc)
/* printf("%3"PRIdPTRDIFF" ", VM_CFP_CNT(th, cfp)); */
if (pc >= 0) {
- rb_iseq_disasm_insn(0, seq, (size_t)pc, iseq, 0);
+ const VALUE *iseq_original = rb_iseq_original_iseq(iseq);
+
+ rb_iseq_disasm_insn(0, iseq_original, (size_t)pc, iseq, 0);
}
}