[Python-checkins] CVS: python/dist/src/Modules selectmodule.c,2.55,2.56
Tim Peters
tim_one@users.sourceforge.net
Thu, 16 Aug 2001 14:59:49 -0700
Update of /cvsroot/python/python/dist/src/Modules
In directory usw-pr-cvs1:/tmp/cvs-serv9263/Modules
Modified Files:
selectmodule.c
Log Message:
Stop adding 3 to FD_SETSIZE -- it makes no sense. If it turns out it
actually does <wink>, perhaps an Insure run will catch it.
Also removed senseless Windows comment.
Index: selectmodule.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Modules/selectmodule.c,v
retrieving revision 2.55
retrieving revision 2.56
diff -C2 -d -r2.55 -r2.56
*** selectmodule.c 2001/08/16 16:55:10 2.55
--- selectmodule.c 2001/08/16 21:59:46 2.56
***************
*** 72,79 ****
static void
! reap_obj(pylist fd2obj[FD_SETSIZE + 3])
{
int i;
! for (i = 0; i < FD_SETSIZE + 3 && fd2obj[i].sentinel >= 0; i++) {
Py_XDECREF(fd2obj[i].obj);
fd2obj[i].obj = NULL;
--- 72,79 ----
static void
! reap_obj(pylist fd2obj[FD_SETSIZE + 1])
{
int i;
! for (i = 0; i < FD_SETSIZE + 1 && fd2obj[i].sentinel >= 0; i++) {
Py_XDECREF(fd2obj[i].obj);
fd2obj[i].obj = NULL;
***************
*** 87,91 ****
*/
static int
! list2set(PyObject *list, fd_set *set, pylist fd2obj[FD_SETSIZE + 3])
{
int i;
--- 87,91 ----
*/
static int
! list2set(PyObject *list, fd_set *set, pylist fd2obj[FD_SETSIZE + 1])
{
int i;
***************
*** 142,146 ****
/* returns NULL and sets the Python exception if an error occurred */
static PyObject *
! set2list(fd_set *set, pylist fd2obj[FD_SETSIZE + 3])
{
int i, j, count=0;
--- 142,146 ----
/* returns NULL and sets the Python exception if an error occurred */
static PyObject *
! set2list(fd_set *set, pylist fd2obj[FD_SETSIZE + 1])
{
int i, j, count=0;
***************
*** 191,201 ****
{
#ifdef SELECT_USES_HEAP
- /* This would be an awful lot of stack space on Windows! */
pylist *rfd2obj, *wfd2obj, *efd2obj;
#else /* !SELECT_USES_HEAP */
! /* XXX: Why, oh why does this add 3?! As far as anyone can tell,
! * it should only add 1 for the sentinel.
! *
! * XXX: All this should probably be implemented as follows:
* - find the highest descriptor we're interested in
* - add one
--- 191,197 ----
{
#ifdef SELECT_USES_HEAP
pylist *rfd2obj, *wfd2obj, *efd2obj;
#else /* !SELECT_USES_HEAP */
! /* XXX: All this should probably be implemented as follows:
* - find the highest descriptor we're interested in
* - add one
***************
*** 203,209 ****
* See: Stevens, APitUE, $12.5.1
*/
! pylist rfd2obj[FD_SETSIZE + 3];
! pylist wfd2obj[FD_SETSIZE + 3];
! pylist efd2obj[FD_SETSIZE + 3];
#endif /* SELECT_USES_HEAP */
PyObject *ifdlist, *ofdlist, *efdlist;
--- 199,205 ----
* See: Stevens, APitUE, $12.5.1
*/
! pylist rfd2obj[FD_SETSIZE + 1];
! pylist wfd2obj[FD_SETSIZE + 1];
! pylist efd2obj[FD_SETSIZE + 1];
#endif /* SELECT_USES_HEAP */
PyObject *ifdlist, *ofdlist, *efdlist;
***************
*** 254,260 ****
#ifdef SELECT_USES_HEAP
/* Allocate memory for the lists */
! rfd2obj = PyMem_NEW(pylist, FD_SETSIZE + 3);
! wfd2obj = PyMem_NEW(pylist, FD_SETSIZE + 3);
! efd2obj = PyMem_NEW(pylist, FD_SETSIZE + 3);
if (rfd2obj == NULL || wfd2obj == NULL || efd2obj == NULL) {
if (rfd2obj) PyMem_DEL(rfd2obj);
--- 250,256 ----
#ifdef SELECT_USES_HEAP
/* Allocate memory for the lists */
! rfd2obj = PyMem_NEW(pylist, FD_SETSIZE + 1);
! wfd2obj = PyMem_NEW(pylist, FD_SETSIZE + 1);
! efd2obj = PyMem_NEW(pylist, FD_SETSIZE + 1);
if (rfd2obj == NULL || wfd2obj == NULL || efd2obj == NULL) {
if (rfd2obj) PyMem_DEL(rfd2obj);