[前][次][番号順一覧][スレッド一覧]

ruby-changes:5156

From: nobu <ko1@a...>
Date: Tue, 27 May 2008 21:54:15 +0900 (JST)
Subject: [ruby-changes:5156] Ruby:r16651 (trunk): * thread.c (rb_thread_execute_interrupts): delay interrupts during

nobu	2008-05-27 21:53:51 +0900 (Tue, 27 May 2008)

  New Revision: 16651

  Modified files:
    trunk/ChangeLog
    trunk/thread.c

  Log:
    * thread.c (rb_thread_execute_interrupts): delay interrupts during
      raising exceptions.  [ruby-dev:34855]


  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=16651&r2=16650&diff_format=u
  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/thread.c?r1=16651&r2=16650&diff_format=u

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 16650)
+++ ChangeLog	(revision 16651)
@@ -1,3 +1,8 @@
+Tue May 27 21:53:49 2008  Nobuyoshi Nakada  <nobu@r...>
+
+	* thread.c (rb_thread_execute_interrupts): delay interrupts during
+	  raising exceptions.  [ruby-dev:34855]
+
 Tue May 27 20:18:30 2008  Akinori MUSHA  <knu@i...>
 
 	* array.c (rb_ary_slice_bang): Return an empty array instead of
Index: thread.c
===================================================================
--- thread.c	(revision 16650)
+++ thread.c	(revision 16651)
@@ -814,6 +814,7 @@
 void
 rb_thread_execute_interrupts(rb_thread_t *th)
 {
+    if (th->raised_flag) return;
     while (th->interrupt_flag) {
 	int status = th->status;
 	th->status = THREAD_RUNNABLE;

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]