summaryrefslogtreecommitdiff
path: root/eval.c
diff options
context:
space:
mode:
Diffstat (limited to 'eval.c')
-rw-r--r--eval.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/eval.c b/eval.c
index eda872dc38..a237768145 100644
--- a/eval.c
+++ b/eval.c
@@ -2457,6 +2457,7 @@ call_trace_func(event, node, self, id, klass)
if (!trace_func) return;
if (tracing) return;
if (id == ID_ALLOCATOR) return;
+ if (!node && ruby_sourceline == 0) return;
if (!(node_save = ruby_current_node)) {
node_save = NEW_BEGIN(0);
@@ -2491,7 +2492,7 @@ call_trace_func(event, node, self, id, klass)
INT2FIX(ruby_sourceline),
id?ID2SYM(id):Qnil,
self?rb_f_binding(self):Qnil,
- klass),
+ klass?klass:Qnil),
Qundef, 0);
}
if (raised) thread_set_raised();