ruby-changes:31908
From: tmm1 <ko1@a...>
Date: Wed, 4 Dec 2013 13:05:28 +0900 (JST)
Subject: [ruby-changes:31908] tmm1:r43987 (trunk): * vm_trace.c (rb_suppress_tracing): Fix initialization of stack
tmm1 2013-12-04 13:05:15 +0900 (Wed, 04 Dec 2013) New Revision: 43987 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=43987 Log: * vm_trace.c (rb_suppress_tracing): Fix initialization of stack allocated rb_trace_arg_t structure. Without this patch, sometimes INTERNAL_EVENT_GC would be skipped accidentally inside rb_threadptr_exec_event_hooks_orig(). Modified files: trunk/ChangeLog trunk/vm_trace.c Index: ChangeLog =================================================================== --- ChangeLog (revision 43986) +++ ChangeLog (revision 43987) @@ -1,3 +1,10 @@ https://github.com/ruby/ruby/blob/trunk/ChangeLog#L1 +Wed Dec 4 13:02:13 2013 Aman Gupta <ruby@t...> + + * vm_trace.c (rb_suppress_tracing): Fix initialization of stack + allocated rb_trace_arg_t structure. Without this patch, sometimes + INTERNAL_EVENT_GC would be skipped accidentally inside + rb_threadptr_exec_event_hooks_orig(). + Wed Dec 4 12:57:24 2013 Aman Gupta <ruby@t...> * string.c (fstr_update_callback): Improve implementation in r43968 Index: vm_trace.c =================================================================== --- vm_trace.c (revision 43986) +++ vm_trace.c (revision 43987) @@ -392,6 +392,7 @@ rb_suppress_tracing(VALUE (*func)(VALUE) https://github.com/ruby/ruby/blob/trunk/vm_trace.c#L392 int state; const int tracing = th->trace_arg ? 1 : 0; rb_trace_arg_t dummy_trace_arg; + dummy_trace_arg.event = 0; if (!tracing) th->vm->trace_running++; if (!th->trace_arg) th->trace_arg = &dummy_trace_arg; -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/