diff options
author | tmm1 <tmm1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-12-04 04:05:15 +0000 |
---|---|---|
committer | tmm1 <tmm1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-12-04 04:05:15 +0000 |
commit | 348903a628c38a4334531ac5a20e23fa44e670f3 (patch) | |
tree | 8adaf15d3b37d4861038dc0064408deb2fdaf640 | |
parent | 753fe47175c0a4d5b8a88498ade2eaa521b91b8f (diff) | |
download | ruby-348903a628c38a4334531ac5a20e23fa44e670f3.tar.gz |
* 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().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43987 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | vm_trace.c | 1 |
2 files changed, 8 insertions, 0 deletions
@@ -1,3 +1,10 @@ +Wed Dec 4 13:02:13 2013 Aman Gupta <ruby@tmm1.net> + + * 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@tmm1.net> * string.c (fstr_update_callback): Improve implementation in r43968 diff --git a/vm_trace.c b/vm_trace.c index 3a88811286..49a5fd0832 100644 --- a/vm_trace.c +++ b/vm_trace.c @@ -392,6 +392,7 @@ rb_suppress_tracing(VALUE (*func)(VALUE), VALUE arg) 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; |