summaryrefslogtreecommitdiff
path: root/thread.c
diff options
context:
space:
mode:
Diffstat (limited to 'thread.c')
-rw-r--r--thread.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/thread.c b/thread.c
index 912462e211..ac887d037d 100644
--- a/thread.c
+++ b/thread.c
@@ -600,6 +600,8 @@ thread_do_start(rb_thread_t *th, VALUE args)
}
}
+void rb_ec_clear_current_thread_trace_func(const rb_execution_context_t *ec);
+
static int
thread_start_func_2(rb_thread_t *th, VALUE *stack_start, VALUE *register_stack_start)
{
@@ -673,6 +675,8 @@ thread_start_func_2(rb_thread_t *th, VALUE *stack_start, VALUE *register_stack_s
}
EC_POP_TAG();
+ rb_ec_clear_current_thread_trace_func(th->ec);
+
/* locking_mutex must be Qfalse */
if (th->locking_mutex != Qfalse) {
rb_bug("thread_start_func_2: locking_mutex must not be set (%p:%"PRIxVALUE")",