Issue #24732, #23834: Fix sock_accept_impl() on Windows

accept() returns INVALID_SOCKET on error, it's not necessary a negative number.
diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c
index 7610b0c..ee24907 100644
--- a/Modules/socketmodule.c
+++ b/Modules/socketmodule.c
@@ -2211,7 +2211,12 @@
 #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) */