summaryrefslogtreecommitdiffhomepage
path: root/src/backtrace.c
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2016-03-06 12:15:55 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2016-03-06 12:15:55 +0900
commitb4d946f6bccffa4cd6b1a89b13cf0a6f76d8f3ff (patch)
tree18da5408ccc2a372b859162a386caf754ac36795 /src/backtrace.c
parent1a4540fb4aa53ee438b5fa65e28f3ad39537c39e (diff)
parentf1eb3aea114cbd1e2622cbe9618571f3e1eec115 (diff)
downloadmruby-b4d946f6bccffa4cd6b1a89b13cf0a6f76d8f3ff.tar.gz
mruby-b4d946f6bccffa4cd6b1a89b13cf0a6f76d8f3ff.zip
Merge pull request #3129 from kou/fix-segv-by-backtrace-and-gc
Fix SEGV by backtrace and GC
Diffstat (limited to 'src/backtrace.c')
-rw-r--r--src/backtrace.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/src/backtrace.c b/src/backtrace.c
index 5bf6d3196..45a8cc2de 100644
--- a/src/backtrace.c
+++ b/src/backtrace.c
@@ -111,8 +111,6 @@ each_backtrace(mrb_state *mrb, mrb_int ciidx, mrb_code *pc0, each_backtrace_func
mrb_callinfo *ci;
mrb_irep *irep;
mrb_code *pc;
-
- loc.lineno = -1;
ci = &mrb->c->cibase[i];
@@ -130,11 +128,8 @@ each_backtrace(mrb_state *mrb, mrb_int ciidx, mrb_code *pc0, each_backtrace_func
else {
pc = pc0;
}
-
- if (irep) {
- loc.filename = mrb_debug_get_filename(irep, (uint32_t)(pc - irep->iseq));
- loc.lineno = mrb_debug_get_line(irep, (uint32_t)(pc - irep->iseq));
- }
+ loc.filename = mrb_debug_get_filename(irep, (uint32_t)(pc - irep->iseq));
+ loc.lineno = mrb_debug_get_line(irep, (uint32_t)(pc - irep->iseq));
if (loc.lineno == -1) continue;