summaryrefslogtreecommitdiff
path: root/thread.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-07-20 07:11:35 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-07-20 07:11:35 +0000
commit39c56c33490275091939ba33ee18b03b140ea3b7 (patch)
tree0a0e7b1a90c1475d32669798d0ae72647560616c /thread.c
parent98a54d46f74bf3c7b60b83bcc73e0b312425a1bb (diff)
* compile.c, compile.h (DECL_ANCHOR, INIT_ANCHOR): split not to
initialize aggregations with dynamic values. [ruby-talk:259306] * eval.c (rb_protect): not to initialize aggregations with dynamic values. [ruby-talk:259306] * gc.c (mark_current_machine_context): ditto. * thread.c (thgroup_list, call_trace_func): ditto. * vm.c (vm_init_redefined_flag): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12822 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'thread.c')
-rw-r--r--thread.c15
1 files changed, 11 insertions, 4 deletions
diff --git a/thread.c b/thread.c
index 4a71ced1fe..d00cc45a71 100644
--- a/thread.c
+++ b/thread.c
@@ -1964,9 +1964,10 @@ static VALUE
thgroup_list(VALUE group)
{
VALUE ary = rb_ary_new();
- struct thgroup_list_params param = {
- ary, group,
- };
+ struct thgroup_list_params param;
+
+ param.ary = ary;
+ param.group = group;
st_foreach(GET_THREAD()->vm->living_threads, thgroup_list_i, (st_data_t) & param);
return ary;
}
@@ -2808,7 +2809,13 @@ call_trace_proc(VALUE args)
static void
call_trace_func(rb_event_flag_t event, VALUE proc, VALUE self, ID id, VALUE klass)
{
- struct call_trace_func_args args = {event, proc, self, id, klass};
+ struct call_trace_func_args args;
+
+ args.event = event;
+ args.proc = proc;
+ args.self = self;
+ args.id = id;
+ args.klass = klass;
ruby_suppress_tracing(call_trace_proc, (VALUE)&args);
}