* eval.c (ruby_finalize_0): clear trace_func after executing END
procs. * thread.c: fix typo. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16846 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
18d4c1f044
commit
cbbc06dcf7
@ -1,3 +1,10 @@
|
|||||||
|
Thu Jun 5 23:25:34 2008 Yusuke Endoh <mame@tsg.ne.jp>
|
||||||
|
|
||||||
|
* eval.c (ruby_finalize_0): clear trace_func after executing END
|
||||||
|
procs.
|
||||||
|
|
||||||
|
* thread.c: fix typo.
|
||||||
|
|
||||||
Thu Jun 5 22:50:50 2008 Tanaka Akira <akr@fsij.org>
|
Thu Jun 5 22:50:50 2008 Tanaka Akira <akr@fsij.org>
|
||||||
|
|
||||||
* gc.c (os_obj_of): heaps may be modified in yield.
|
* gc.c (os_obj_of): heaps may be modified in yield.
|
||||||
|
2
eval.c
2
eval.c
@ -115,13 +115,13 @@ ruby_options(int argc, char **argv)
|
|||||||
static void
|
static void
|
||||||
ruby_finalize_0(void)
|
ruby_finalize_0(void)
|
||||||
{
|
{
|
||||||
rb_clear_trace_func();
|
|
||||||
PUSH_TAG();
|
PUSH_TAG();
|
||||||
if (EXEC_TAG() == 0) {
|
if (EXEC_TAG() == 0) {
|
||||||
rb_trap_exit();
|
rb_trap_exit();
|
||||||
}
|
}
|
||||||
POP_TAG();
|
POP_TAG();
|
||||||
rb_exec_end_proc();
|
rb_exec_end_proc();
|
||||||
|
rb_clear_trace_func();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
6
thread.c
6
thread.c
@ -2817,7 +2817,7 @@ rb_exec_recursive(VALUE (*func) (VALUE, VALUE, int), VALUE obj, VALUE arg)
|
|||||||
/* tracer */
|
/* tracer */
|
||||||
|
|
||||||
static rb_event_hook_t *
|
static rb_event_hook_t *
|
||||||
alloc_event_fook(rb_event_hook_func_t func, rb_event_flag_t events, VALUE data)
|
alloc_event_hook(rb_event_hook_func_t func, rb_event_flag_t events, VALUE data)
|
||||||
{
|
{
|
||||||
rb_event_hook_t *hook = ALLOC(rb_event_hook_t);
|
rb_event_hook_t *hook = ALLOC(rb_event_hook_t);
|
||||||
hook->func = func;
|
hook->func = func;
|
||||||
@ -2842,7 +2842,7 @@ void
|
|||||||
rb_thread_add_event_hook(rb_thread_t *th,
|
rb_thread_add_event_hook(rb_thread_t *th,
|
||||||
rb_event_hook_func_t func, rb_event_flag_t events, VALUE data)
|
rb_event_hook_func_t func, rb_event_flag_t events, VALUE data)
|
||||||
{
|
{
|
||||||
rb_event_hook_t *hook = alloc_event_fook(func, events, data);
|
rb_event_hook_t *hook = alloc_event_hook(func, events, data);
|
||||||
hook->next = th->event_hooks;
|
hook->next = th->event_hooks;
|
||||||
th->event_hooks = hook;
|
th->event_hooks = hook;
|
||||||
thread_reset_event_flags(th);
|
thread_reset_event_flags(th);
|
||||||
@ -2873,7 +2873,7 @@ set_threads_event_flags(int flag)
|
|||||||
void
|
void
|
||||||
rb_add_event_hook(rb_event_hook_func_t func, rb_event_flag_t events, VALUE data)
|
rb_add_event_hook(rb_event_hook_func_t func, rb_event_flag_t events, VALUE data)
|
||||||
{
|
{
|
||||||
rb_event_hook_t *hook = alloc_event_fook(func, events, data);
|
rb_event_hook_t *hook = alloc_event_hook(func, events, data);
|
||||||
rb_vm_t *vm = GET_VM();
|
rb_vm_t *vm = GET_VM();
|
||||||
|
|
||||||
hook->next = vm->event_hooks;
|
hook->next = vm->event_hooks;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user