]> granicus.if.org Git - python/commitdiff
Issue #24732, #23834: Fix sock_accept_impl() on Windows
authorVictor Stinner <victor.stinner@gmail.com>
Mon, 27 Jul 2015 21:37:11 +0000 (23:37 +0200)
committerVictor Stinner <victor.stinner@gmail.com>
Mon, 27 Jul 2015 21:37:11 +0000 (23:37 +0200)
accept() returns INVALID_SOCKET on error, it's not necessary a negative number.

Modules/socketmodule.c

index 7610b0c05dd53746575693cd31aec62892b8fd66..ee249070c380d95a0d023e85ed6cc6dcfbaa9fa8 100644 (file)
@@ -2211,7 +2211,12 @@ sock_accept_impl(PySocketSockObject *s, void *data)
 #else
     ctx->result = accept(s->sock_fd, SAS2SA(ctx->addrbuf), ctx->addrlen);
 #endif
+
+#ifdef MS_WINDOWS
+    return (ctx->result != INVALID_SOCKET);
+#else
     return (ctx->result >= 0);
+#endif
 }
 
 /* s._accept() -> (fd, address) */