[pywin32-checkins] pywin32/win32/src win32pipe.i,1.11,1.12
OLD project page for the Python extensions for Windows
Brought to you by:
mhammond
From: Mark H. <mha...@us...> - 2005-05-18 02:38:59
|
Update of /cvsroot/pywin32/pywin32/win32/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21258 Modified Files: win32pipe.i Log Message: SetNamedPipeState now allows None for any of the last 3 params Index: win32pipe.i =================================================================== RCS file: /cvsroot/pywin32/pywin32/win32/src/win32pipe.i,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** win32pipe.i 30 Jan 2005 13:39:26 -0000 1.11 --- win32pipe.i 18 May 2005 02:38:49 -0000 1.12 *************** *** 217,236 **** unsigned long MaxCollectionCount; unsigned long CollectDataTimeout; PyObject *obhNamedPipe; // @pyparm <o PyHANDLE>|hPipe||The handle to the pipe. ! // @pyparm int|Mode||The pipe read mode. ! // @pyparm int|MaxCollectionCount||Maximum bytes collected before transmission to the server. ! // @pyparm int|CollectDataTimeout||Maximum time to wait, in milliseconds, before transmission to server. ! if (!PyArg_ParseTuple(args, "Oiii:SetNamedPipeHandleState", ! &obhNamedPipe, &Mode, ! &MaxCollectionCount, &CollectDataTimeout)) return NULL; if (!PyWinObject_AsHANDLE(obhNamedPipe, &hNamedPipe)) return NULL; ! if (!SetNamedPipeHandleState(hNamedPipe, &Mode, &MaxCollectionCount, ! &CollectDataTimeout)) return PyWin_SetAPIError("SetNamedPipeHandleState"); Py_INCREF(Py_None); --- 217,258 ---- unsigned long MaxCollectionCount; unsigned long CollectDataTimeout; + unsigned long *pMaxCollectionCount = NULL; + unsigned long *pCollectDataTimeout = NULL; + unsigned long *pMode = NULL; PyObject *obhNamedPipe; + PyObject *obMode, *obMaxCollectionCount, *obCollectDataTimeout; // @pyparm <o PyHANDLE>|hPipe||The handle to the pipe. ! // @pyparm int/None|Mode||The pipe read mode. ! // @pyparm int/None|MaxCollectionCount||Maximum bytes collected before transmission to the server. ! // @pyparm int/None|CollectDataTimeout||Maximum time to wait, in milliseconds, before transmission to server. ! if (!PyArg_ParseTuple(args, "OOOO:SetNamedPipeHandleState", ! &obhNamedPipe, &obMode, ! &obMaxCollectionCount, &obCollectDataTimeout)) return NULL; if (!PyWinObject_AsHANDLE(obhNamedPipe, &hNamedPipe)) return NULL; + if (obMode!=Py_None) { + if (!PyInt_Check(obMode)) + return PyErr_Format(PyExc_TypeError, "mode param must be None or an integer (got %s)", obMode->ob_type->tp_name); + Mode = PyInt_AsLong(obMode); + pMode = &Mode; + } + if (obMaxCollectionCount!=Py_None) { + if (!PyInt_Check(obMaxCollectionCount)) + return PyErr_Format(PyExc_TypeError, "maxCollectionCount param must be None or an integer (got %s)", obMaxCollectionCount->ob_type->tp_name); + MaxCollectionCount = PyInt_AsLong(obMaxCollectionCount); + pMaxCollectionCount = &MaxCollectionCount; + } + if (obCollectDataTimeout!=Py_None) { + if (!PyInt_Check(obCollectDataTimeout)) + return PyErr_Format(PyExc_TypeError, "collectDataTimeout param must be None or an integer (got %s)", obCollectDataTimeout->ob_type->tp_name); + CollectDataTimeout = PyInt_AsLong(obCollectDataTimeout); + pCollectDataTimeout = &CollectDataTimeout; + } ! if (!SetNamedPipeHandleState(hNamedPipe, pMode, pMaxCollectionCount, ! pCollectDataTimeout)) return PyWin_SetAPIError("SetNamedPipeHandleState"); Py_INCREF(Py_None); |