Update of /cvsroot/pywin32/pywin32/com/win32comext/shell/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28183
Modified Files:
PyIShellFolder.cpp
Log Message:
Fix SetNameOf
Index: PyIShellFolder.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32comext/shell/src/PyIShellFolder.cpp,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** PyIShellFolder.cpp 12 Mar 2004 08:34:25 -0000 1.5
--- PyIShellFolder.cpp 9 Apr 2004 11:20:06 -0000 1.6
***************
*** 380,386 ****
return PyCom_BuildPyException(hr, pISF, IID_IShellFolder );
PyObject *ret = PyObject_FromPIDL(pidlRet, TRUE);
! Py_INCREF(Py_None);
! return Py_None;
!
}
--- 380,384 ----
return PyCom_BuildPyException(hr, pISF, IID_IShellFolder );
PyObject *ret = PyObject_FromPIDL(pidlRet, TRUE);
! return ret;
}
***************
*** 568,573 ****
if (FAILED(hr)) return hr;
// Process the Python results, and convert back to the real params
! if (!PyArg_Parse(result, "l" , rgfInOut))
! hr = PyCom_SetAndLogCOMErrorFromPyException("GetAttributesOf", IID_IShellFolder);
Py_DECREF(result);
return hr;
--- 566,572 ----
if (FAILED(hr)) return hr;
// Process the Python results, and convert back to the real params
! if (rgfInOut && PyInt_Check(result))
! *rgfInOut = PyInt_AsLong(result);
! hr = PyCom_SetAndLogCOMErrorFromPyException("GetAttributesOf", IID_IShellFolder);
Py_DECREF(result);
return hr;
***************
*** 638,641 ****
--- 637,641 ----
static const char *szMethodName = "SetNameOf";
PY_GATEWAY_METHOD;
+ if (ppidlOut) (*ppidlOut)=NULL;
PyObject *obpidl;
PyObject *oblpszName;
***************
*** 647,652 ****
Py_XDECREF(oblpszName);
if (FAILED(hr)) return hr;
! PyObject_AsPIDL(result, ppidlOut, FALSE);
! hr = PyCom_SetAndLogCOMErrorFromPyException(szMethodName, IID_IShellFolder);
Py_DECREF(result);
return hr;
--- 647,654 ----
Py_XDECREF(oblpszName);
if (FAILED(hr)) return hr;
! if (ppidlOut) {
! PyObject_AsPIDL(result, ppidlOut, FALSE);
! hr = PyCom_SetAndLogCOMErrorFromPyException(szMethodName, IID_IShellFolder);
! }
Py_DECREF(result);
return hr;
|