From 919f1438ae30848b8f1b9e7071c27c302049a0f0 Mon Sep 17 00:00:00 2001 From: ko1 Date: Wed, 11 Dec 2013 07:53:16 +0000 Subject: * eval.c (rb_raise_jump): call c_return hook immediately after popping `raise' frame. Patches by deivid (David Rodriguez). [Bug #8886] * test/ruby/test_settracefunc.rb: catch up this fix. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44139 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- eval.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'eval.c') diff --git a/eval.c b/eval.c index 873d549739..c49fd88f02 100644 --- a/eval.c +++ b/eval.c @@ -689,10 +689,10 @@ rb_raise_jump(VALUE mesg) ID mid = cfp->me->called_id; th->cfp = RUBY_VM_PREVIOUS_CONTROL_FRAME(th->cfp); + EXEC_EVENT_HOOK(th, RUBY_EVENT_C_RETURN, self, mid, klass, Qnil); setup_exception(th, TAG_RAISE, mesg); - EXEC_EVENT_HOOK(th, RUBY_EVENT_C_RETURN, self, mid, klass, Qnil); rb_thread_raised_clear(th); JUMP_TAG(TAG_RAISE); } -- cgit v1.2.3