]> granicus.if.org Git - python/commitdiff
Patch #1191065: Fix preprocessor problems on systems where recvfrom
authorMartin v. Löwis <martin@v.loewis.de>
Sat, 15 Apr 2006 08:35:59 +0000 (08:35 +0000)
committerMartin v. Löwis <martin@v.loewis.de>
Sat, 15 Apr 2006 08:35:59 +0000 (08:35 +0000)
is a macro.

Misc/NEWS
Modules/socketmodule.c

index 4822150a09c5d9bccf1df39e2b224b7bc6b86560..22dbc9c06582bafb16b1b9f18b3c2ae8f130fb53 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -48,6 +48,9 @@ Core and builtins
 Extension Modules
 -----------------
 
+- Patch #1191065: Fix preprocessor problems on systems where recvfrom
+  is a macro.
+
 - Bug #1467952: os.listdir() now correctly raises an error if readdir()
   fails with an error condition.
 
index bb5150fa7a631fcb102ecdd88bc5bfd33b5f72fc..93cb8e08840f5fcb60a46858a90d6c3431a76504 100644 (file)
@@ -2208,18 +2208,20 @@ sock_recvfrom(PySocketSockObject *s, PyObject *args)
        Py_BEGIN_ALLOW_THREADS
        memset(&addrbuf, 0, addrlen);
        timeout = internal_select(s, 0);
-       if (!timeout)
-               n = recvfrom(s->sock_fd, PyString_AS_STRING(buf), len, flags,
+       if (!timeout) {
 #ifndef MS_WINDOWS
 #if defined(PYOS_OS2) && !defined(PYCC_GCC)
-                            (struct sockaddr *) &addrbuf, &addrlen
+               n = recvfrom(s->sock_fd, PyString_AS_STRING(buf), len, flags,
+                            (struct sockaddr *) &addrbuf, &addrlen);
 #else
-                            (void *) &addrbuf, &addrlen
+               n = recvfrom(s->sock_fd, PyString_AS_STRING(buf), len, flags,
+                            (void *) &addrbuf, &addrlen);
 #endif
 #else
-                            (struct sockaddr *) &addrbuf, &addrlen
+               n = recvfrom(s->sock_fd, PyString_AS_STRING(buf), len, flags,
+                            (struct sockaddr *) &addrbuf, &addrlen);
 #endif
-                       );
+       }
        Py_END_ALLOW_THREADS
 
        if (timeout) {