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

ruby-changes:12653

From: usa <ko1@a...>
Date: Mon, 3 Aug 2009 16:30:41 +0900 (JST)
Subject: [ruby-changes:12653] Ruby:r24367 (trunk): * win32/win32.c (rb_w32_connect): return value was broken when some

usa	2009-08-03 16:30:19 +0900 (Mon, 03 Aug 2009)

  New Revision: 24367

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

  Log:
    * win32/win32.c (rb_w32_connect): return value was broken when some
      error occurred.
      [ruby-core:24234]

  Modified files:
    trunk/ChangeLog
    trunk/win32/win32.c

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 24366)
+++ ChangeLog	(revision 24367)
@@ -1,3 +1,9 @@
+Mon Aug  3 16:28:09 2009  NAKAMURA Usaku  <usa@r...>
+
+	* win32/win32.c (rb_w32_connect): return value was broken when some
+	  error occurred.
+	  [ruby-core:24234]
+
 Mon Aug  3 15:56:52 2009  Nobuyoshi Nakada  <nobu@r...>
 
 	* array.c (permute0): use chars for boolean array.
Index: win32/win32.c
===================================================================
--- win32/win32.c	(revision 24366)
+++ win32/win32.c	(revision 24367)
@@ -2591,14 +2591,11 @@
     RUBY_CRITICAL({
 	r = connect(TO_SOCKET(s), addr, addrlen);
 	if (r == SOCKET_ERROR) {
-	    r = WSAGetLastError();
-	    if (r != WSAEWOULDBLOCK) {
-		errno = map_errno(r);
-	    }
-	    else {
+	    int err = WSAGetLastError();
+	    if (err != WSAEWOULDBLOCK)
+		errno = map_errno(err);
+	    else
 		errno = EINPROGRESS;
-		r = -1;
-	    }
 	}
     });
     return r;

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

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