Merged revisions 61913,61915-61916,61918-61919,61922-61926,61928-61929,61931,61935,61938,61943 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r61913 | benjamin.peterson | 2008-03-25 22:14:42 +0100 (Tue, 25 Mar 2008) | 2 lines

  Merged the ACKS from py3k
........
  r61915 | thomas.heller | 2008-03-25 22:18:39 +0100 (Tue, 25 Mar 2008) | 1 line

  Make _ctypes.c PY_SSIZE_T_CLEAN.
........
  r61916 | benjamin.peterson | 2008-03-25 22:55:50 +0100 (Tue, 25 Mar 2008) | 3 lines

  Opps! I merged the revisions, but forgot to add
  the header to ACKS
........
  r61918 | andrew.kuchling | 2008-03-26 01:16:50 +0100 (Wed, 26 Mar 2008) | 1 line

  Minor docstring typos
........
  r61919 | andrew.kuchling | 2008-03-26 01:30:02 +0100 (Wed, 26 Mar 2008) | 1 line

  Add various items
........
  r61922 | neal.norwitz | 2008-03-26 05:55:51 +0100 (Wed, 26 Mar 2008) | 6 lines

  Try to get this test to be less flaky.  It was failing sometimes because
  the connect would succeed before the timeout occurred.  Try using an
  address and port that hopefully doesn't exist to ensure we get no response.
  If this doesn't work, we can use a public address close to python.org
  and hopefully that address never gets taken.
........
  r61923 | jerry.seutter | 2008-03-26 06:03:03 +0100 (Wed, 26 Mar 2008) | 1 line

  Changed test so it no longer runs as a side effect of importing.
........
  r61924 | neal.norwitz | 2008-03-26 06:19:41 +0100 (Wed, 26 Mar 2008) | 5 lines

  Ensure that the mailbox is closed to prevent problems on Windows with removing
  an open file.  This doesn't seem to be a problem in 2.6, but that appears
  to be somewhat accidental (specific to reference counting).  When this
  gets merged to 3.0, it will make the 3.0 code simpler.
........
  r61925 | jerry.seutter | 2008-03-26 06:32:51 +0100 (Wed, 26 Mar 2008) | 1 line

  Changed test so it no longer runs as a side effect of importing.
........
  r61926 | jerry.seutter | 2008-03-26 06:58:14 +0100 (Wed, 26 Mar 2008) | 1 line

  Changed test so it no longer runs as a side effect of importing.
........
  r61928 | georg.brandl | 2008-03-26 10:04:36 +0100 (Wed, 26 Mar 2008) | 2 lines

  Add Josiah.
........
  r61929 | georg.brandl | 2008-03-26 10:32:46 +0100 (Wed, 26 Mar 2008) | 2 lines

  Add an example for an RFC 822 continuation.
........
  r61931 | benjamin.peterson | 2008-03-26 12:57:47 +0100 (Wed, 26 Mar 2008) | 2 lines

  Added help options to PDB
........
  r61935 | christian.heimes | 2008-03-26 13:32:49 +0100 (Wed, 26 Mar 2008) | 1 line

  Prepare integration of bytearray backport branch
........
  r61938 | christian.heimes | 2008-03-26 13:50:43 +0100 (Wed, 26 Mar 2008) | 3 lines

  Removed merge tracking for "svnmerge" for
  svn+ssh://pythondev@svn.python.org/python/branches/trunk-bytearray
........
  r61943 | georg.brandl | 2008-03-26 13:57:47 +0100 (Wed, 26 Mar 2008) | 2 lines

  Fix and simplify error handling, silencing a compiler warning.
........
diff --git a/Modules/selectmodule.c b/Modules/selectmodule.c
index 0f0cabd..653b713 100644
--- a/Modules/selectmodule.c
+++ b/Modules/selectmodule.c
@@ -409,7 +409,7 @@
 
 PyDoc_STRVAR(poll_modify_doc,
 "modify(fd, eventmask) -> None\n\n\
-Modify an already register file descriptor.\n\
+Modify an already registered file descriptor.\n\
 fd -- either an integer, or an object with a fileno() method returning an\n\
       int.\n\
 events -- an optional bitmask describing the type of events to check for");
@@ -915,10 +915,10 @@
 PyDoc_STRVAR(pyepoll_register_doc,
 "register(fd[, eventmask]) -> bool\n\
 \n\
-Registers a new fd or modifies an already registered fd. register returns\n\
+Registers a new fd or modifies an already registered fd. register() returns\n\
 True if a new fd was registered or False if the event mask for fd was modified.\n\
-fd is the target file descriptor of the operation\n\
-events is a bit set composed of the various EPOLL constants, the default\n\
+fd is the target file descriptor of the operation.\n\
+events is a bit set composed of the various EPOLL constants; the default\n\
 is EPOLL_IN | EPOLL_OUT | EPOLL_PRI.\n\
 \n\
 The epoll interface supports all file descriptors that support poll.");
@@ -988,6 +988,7 @@
 	else if (dtimeout * 1000.0 > INT_MAX) {
 		PyErr_SetString(PyExc_OverflowError,
 				"timeout is too large");
+		return NULL;
 	}
 	else {
 		timeout = (int)(dtimeout * 1000.0);
@@ -1024,19 +1025,15 @@
 	}
 
 	for (i = 0; i < nfds; i++) {
-		etuple = Py_BuildValue("iI", evs[i].data.fd,
-				       evs[i].events);
+		etuple = Py_BuildValue("iI", evs[i].data.fd, evs[i].events);
 		if (etuple == NULL) {
+			Py_CLEAR(elist);
 			goto error;
 		}
 		PyList_SET_ITEM(elist, i, etuple);
 	}
 
-	if (0) {
-	    error:
-		Py_CLEAR(elist);
-		Py_XDECREF(etuple);
-	}
+    error:
 	PyMem_Free(evs);
 	return elist;
 }
@@ -1716,7 +1713,7 @@
 \n\
 *** IMPORTANT NOTICE ***\n\
 On Windows and OpenVMS, only sockets are supported; on Unix, all file\n\
-descriptors.");
+descriptors can be used.");
 
 static PyMethodDef select_methods[] = {
 	{"select",	select_select,	METH_VARARGS,	select_doc},