From: Guido van Rossum Date: Fri, 7 Jun 2002 03:36:20 +0000 (+0000) Subject: I decided to change the interaction between setblocking() and X-Git-Tag: v2.3c1~5426 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e8008f0013f14933aead215891812dd138d798fd;p=python I decided to change the interaction between setblocking() and settimeout(). Already, settimeout() canceled non-blocking mode; now, setblocking() also cancels the timeout. This is easier to document. (XXX should settimeout(0) be an alias for setblocking(0)? They seem to have roughly the same effect. Also, I'm not sure that the code in connect() and accept() is correct in all cases. We'll sort this out soon enough.) --- diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c index 65187c5ce1..49dd33245f 100644 --- a/Modules/socketmodule.c +++ b/Modules/socketmodule.c @@ -1086,11 +1086,8 @@ sock_setblocking(PySocketSockObject *s, PyObject *arg) return NULL; s->sock_blocking = block; - - /* If we're not using timeouts, actually set the blocking to give - old python behavior. */ - if (s->sock_timeout < 0.0) - internal_setblocking(s, block); + s->sock_timeout = -1.0; /* Always clear the timeout */ + internal_setblocking(s, block); Py_INCREF(Py_None); return Py_None;