ruby-changes:4059
From: ko1@a...
Date: Tue, 19 Feb 2008 20:50:07 +0900 (JST)
Subject: [ruby-changes:4059] nobu - Ruby:r15549 (trunk): * eval.c (rb_raise_jump): moved adjustment for control frame.
nobu 2008-02-19 20:49:51 +0900 (Tue, 19 Feb 2008) New Revision: 15549 Modified files: trunk/ChangeLog trunk/eval.c Log: * eval.c (rb_raise_jump): moved adjustment for control frame. http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=15549&r2=15548&diff_format=u http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/eval.c?r1=15549&r2=15548&diff_format=u Index: ChangeLog =================================================================== --- ChangeLog (revision 15548) +++ ChangeLog (revision 15549) @@ -1,3 +1,7 @@ +Tue Feb 19 20:49:49 2008 Nobuyoshi Nakada <nobu@r...> + + * eval.c (rb_raise_jump): moved adjustment for control frame. + Tue Feb 19 18:34:32 2008 Tanaka Akira <akr@f...> * gc.c (STACK_LENGTH) [SPARC] : 0x80 offset removed. [ruby-dev:33857] Index: eval.c =================================================================== --- eval.c (revision 15548) +++ eval.c (revision 15549) @@ -775,9 +775,7 @@ argv = &err; } } - err = rb_make_exception(argc, argv); - GET_THREAD()->cfp++; - rb_raise_jump(err); + rb_raise_jump(rb_make_exception(argc, argv)); return Qnil; /* not reached */ } @@ -830,6 +828,8 @@ void rb_raise_jump(VALUE mesg) { + rb_thread_t *th = GET_THREAD(); + th->cfp = RUBY_VM_PREVIOUS_CONTROL_FRAME(th->cfp); /* TODO: fix me */ rb_longjmp(TAG_RAISE, mesg); } -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/