# Bug #3722 $B$K4X$9$k$4Js9p(B

**URL:** <https://www.ruby-forum.com/t/bug-3722-b-k4x-9-k-4js9p-b/194159>\
**Category:** Development\
**Created:** [August 31, 2010, 10:43am UTC](https://www.ruby-forum.com/t/bug-3722-b-k4x-9-k-4js9p-b/194159 "2010-08-31T10:43:53Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Satoshi\_Shiba](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/90db22/32.png) [@Satoshi\_Shiba](https://www.ruby-forum.com/u/Satoshi_Shiba)\
**Post date:** [August 31, 2010, 10:43am UTC](https://www.ruby-forum.com/t/bug-3722-b-k4x-9-k-4js9p-b/194159/1 "2010-08-31T10:43:53Z")

</div>

e$B\<G$H?=$7$^$9!#e(B

redmine e$B$KEPO?$5$l$F$$$ke(B Bug #3722 [ruby-core:31783]  
e$B$K$D$$$FD4$Y$?$H$3e(B  
e$B$m!“e(BEXEC\_EVENT\_HOOK  
e$B;~$NNc30\>pJse(B(th-\>state)e$B$N07$$$KLdBj$,$”$j$=$&$G$9!#e(B

e$B%P%0Js9p$KE=$jIU$1$F$"$C$?e(B fail.rb e$B$r\<B9T$9$k$He(B  
vm\_iter\_break e$B$,\<B9T$5$le(B  
e$B$k$s$G$9$,!"$3$3$G@\_Dj$5$l$?e(B TAG\_BREAK  
e$B$r=hM}$7$F$$$k$H$-$K8F$S=P$9e(B  
EXEC\_EVENT\_HOOK e$B$G!"e(BTAG\_BREAK e$B$re(B th-\>state  
e$B$K@\_Dj$7$?$^$^%$%Y%s%H%O%s%Ie(B  
e$B%i$r\<B9T$7$F$$$^$7$?!#e(B  
e$B%3!\<%k%0%i%U$@$H$3$s$J46$8$G$9!#e(B

vm\_iter\_breake$B!Je(Bth-\>state e$B$Ke(B TAG\_BREAK e$B$r@\_Dje(B)  
(longjmp e$B$Ge(B vm\_exec e$B$X%8%c%s%We(B)  
vm\_exec …(1)  
rb\_threadptr\_exec\_event\_hooks (vm.c e$B$Ne(B1336e$B9TL\e(B)  
exec\_event\_hooks  
call\_trace\_func  
ruby\_suppress\_tracing  
call\_trace\_proc  
rb\_proc\_call\_with\_block  
rb\_vm\_invoke\_proc  
invoke\_block\_from\_c  
vm\_exec …(2)

vm\_iter\_break e$B$+$ie(B (2) e$B$Ne(B vm\_exec e$B$^$G!"e(Bth-\>state  
e$B$,e(B TAG\_BREAK e$B$N$^$^$Ke(B  
e$B$J$C$F$$$^$7$?!#$3$N$?$a!"e(B(1) e$B$Ne(B vm\_exec e$B$G=hM}$9$Y$-e(B  
TAG\_BREAK e$B$N=hM}$,e(B  
(2) e$B$Ne(B vm\_exec e$B$G=hM}$5$l$F$$$F!"e(Bcfp  
e$B$,$:$l$F$7$^$C$F$$$k$h$&$G$9!#e(B

e$B%$%Y%s%H%O%s%I%iFb$GNc30$,H/@8$7$?\>l9g$N$3$H$r9M$($F$$$J$$$N$GA4A3;H$($^e(B  
e$B$;$s$,!"2\<$N%Q%C%A$Ge(B fail.rb e$B$G$Ne(B segv  
e$B$O2sHr$G$-$^$7$?!#e(B

break  
e$B$N=hM};~$K%$%Y%s%H%O%s%I%i$GNc30$,H/@8$7$?\>l9g!"$I$&$$$&5sF0$K$9$Ye(B  
e$B$-$J$N$+$,J,$+$i$J$+$C$?$?$a!"$A$c$s$H$7$?%Q%C%A$O:n$C$F$$$^$;$s$,!";29Me(B  
e$B$^$G$K$4Js9p$$$?$7$^$9!#e(B

# Index: thread.c

— thread.c (revision 29056)  
+++ thread.c (working copy)  
@@ -4099,6 +4099,7 @@ ruby\_suppress\_tracing(VALUE (\*func)(VALU  
rb\_thread\_t \*th = GET\_THREAD();  
int state, tracing;  
volatile int raised;

- volatile int \_state;  
VALUE result = Qnil;

- \_state = th-\>state;

- th-\>state = 0;

- th-\>state = \_state;
