From: Yukihiro Matsumoto Date: 2006-05-07T16:09:30+09:00 Subject: Re: Strange Proc#call problems with profile In message "Re: Strange Proc#call problems with profile" on Sun, 7 May 2006 14:47:22 +0900, "Victor Shepelev" writes: |> Looks like a bug in 1.9; I'm forwarding that to ruby-core: |Aha. Thanks. |Can someone advice me on temporary workaround? [ruby-core:07835] --- eval.c 23 Feb 2006 04:24:39 -0000 1.890 +++ eval.c 6 May 2006 14:41:49 -0000 @@ -8266,3 +8243,3 @@ proc_invoke(VALUE proc, VALUE args /* OK struct BLOCK _block; - struct BLOCK *data; + struct BLOCK *data, *old_block; volatile VALUE result = Qundef; @@ -8304,2 +8277,3 @@ proc_invoke(VALUE proc, VALUE args /* OK /* modify current frame */ + old_block = ruby_frame->block; ruby_frame->block = &_block; @@ -8316,2 +8290,3 @@ proc_invoke(VALUE proc, VALUE args /* OK POP_TAG(); + ruby_frame->block = old_block; ruby_wrapper = old_wrapper;