[pywin32-checkins] pywin32/com/win32com/src/extensions PyIMoniker.cpp,1.3,1.4
OLD project page for the Python extensions for Windows
Brought to you by:
mhammond
From: <mha...@us...> - 2003-11-02 09:56:50
|
Update of /cvsroot/pywin32/pywin32/com/win32com/src/extensions In directory sc8-pr-cvs1:/tmp/cvs-serv3671/extensions Modified Files: PyIMoniker.cpp Log Message: Fix a reference leak in the PyIMoniker enum implementation. Make a moniker an iterator Index: PyIMoniker.cpp =================================================================== RCS file: /cvsroot/pywin32/pywin32/com/win32com/src/extensions/PyIMoniker.cpp,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** PyIMoniker.cpp 26 Nov 1999 04:01:05 -0000 1.3 --- PyIMoniker.cpp 2 Nov 2003 09:56:42 -0000 1.4 *************** *** 58,62 **** for ( i = celtFetched; i--; ) { ! PyObject *ob = PyCom_PyObjectFromIUnknown(rgVar[i], IID_IMoniker, TRUE); if ( ob == NULL ) { --- 58,62 ---- for ( i = celtFetched; i--; ) { ! PyObject *ob = PyCom_PyObjectFromIUnknown(rgVar[i], IID_IMoniker, FALSE); if ( ob == NULL ) { *************** *** 139,143 **** }; ! PyComTypeObject PyIEnumMoniker::type("PyIEnumMoniker", &PyIUnknown::type, // @base PyIEnumMoniker|PyIUnknown sizeof(PyIEnumMoniker), --- 139,143 ---- }; ! PyComEnumTypeObject PyIEnumMoniker::type("PyIEnumMoniker", &PyIUnknown::type, // @base PyIEnumMoniker|PyIUnknown sizeof(PyIEnumMoniker), *************** *** 344,350 **** PyObject *PyIMoniker::Enum(PyObject *self, PyObject *args) { ! // @pyparm int|fForward||If TRUE, enumerates the monikers from left to right. If FALSE, enumerates from right to left. ! int fForward; ! if (!PyArg_ParseTuple(args, "i:Enum", &fForward)) return NULL; --- 344,350 ---- PyObject *PyIMoniker::Enum(PyObject *self, PyObject *args) { ! // @pyparm int|fForward|True|If TRUE, enumerates the monikers from left to right. If FALSE, enumerates from right to left. ! int fForward = TRUE; ! if (!PyArg_ParseTuple(args, "|i:Enum", &fForward)) return NULL; *************** *** 432,438 **** }; ! PyComTypeObject PyIMoniker::type("PyIMoniker", &PyIPersistStream::type, // @base PyIMoniker|PyIPersistStream sizeof(PyIMoniker), PyIMoniker_methods, ! GET_PYCOM_CTOR(PyIMoniker)); --- 432,439 ---- }; ! PyComEnumProviderTypeObject PyIMoniker::type("PyIMoniker", &PyIPersistStream::type, // @base PyIMoniker|PyIPersistStream sizeof(PyIMoniker), PyIMoniker_methods, ! GET_PYCOM_CTOR(PyIMoniker), ! "Enum"); |