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

ruby-changes:19366

From: kosaki <ko1@a...>
Date: Mon, 2 May 2011 00:50:22 +0900 (JST)
Subject: [ruby-changes:19366] Ruby:r31405 (trunk): * ext/socket/init.c (rsock_connect): add to care EINTR. based

kosaki	2011-05-02 00:38:53 +0900 (Mon, 02 May 2011)

  New Revision: 31405

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=31405

  Log:
    * ext/socket/init.c (rsock_connect): add to care EINTR. based
      on a patch from Eric Wong at [ruby-core:35621][Bug #4555]

  Modified files:
    trunk/ChangeLog
    trunk/ext/socket/init.c

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 31404)
+++ ChangeLog	(revision 31405)
@@ -1,3 +1,8 @@
+Mon May  2 00:36:12 2011  KOSAKI Motohiro  <kosaki.motohiro@g...>
+
+	* ext/socket/init.c (rsock_connect): add to care EINTR. based
+	  on a patch from Eric Wong at [ruby-core:35621][Bug #4555]
+
 Sun May  1 01:06:24 2011  KOSAKI Motohiro  <kosaki.motohiro@g...>
 
 	* thread.c (rb_thread_select): release GVL while waiting select().
Index: ext/socket/init.c
===================================================================
--- ext/socket/init.c	(revision 31404)
+++ ext/socket/init.c	(revision 31405)
@@ -383,6 +383,12 @@
 	status = (int)BLOCKING_REGION_FD(func, &arg);
 	if (status < 0) {
 	    switch (errno) {
+	      case EINTR:
+#if defined(ERESTART)
+	      case ERESTART:
+#endif
+		continue;
+
 	      case EAGAIN:
 #ifdef EINPROGRESS
 	      case EINPROGRESS:

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

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