Module: wine Branch: refs/heads/master Commit: 50ec1d6849654224df3cc17cd9938b68577d6cba URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=50ec1d6849654224df3cc17c...
Author: Robert Shearman rob@codeweavers.com Date: Mon May 8 12:42:36 2006 +0100
ole32: Add on the size of the whole OBJREF structure in the case of custom marshaling.
---
dlls/ole32/marshal.c | 14 +++++++------- 1 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/dlls/ole32/marshal.c b/dlls/ole32/marshal.c index 684d93d..976d9e7 100644 --- a/dlls/ole32/marshal.c +++ b/dlls/ole32/marshal.c @@ -1450,13 +1450,13 @@ HRESULT WINAPI CoGetMarshalSizeMax(ULONG
hr = IMarshal_GetMarshalSizeMax(pMarshal, riid, pUnk, dwDestContext, pvDestContext, mshlFlags, pulSize); - /* add on the size of the common header */ - *pulSize += FIELD_OFFSET(OBJREF, u_objref); - - /* if custom marshaling, add on size of custom header */ - if (!IsEqualCLSID(&marshaler_clsid, &CLSID_DfMarshal)) - *pulSize += FIELD_OFFSET(OBJREF, u_objref.u_custom.pData) - - FIELD_OFFSET(OBJREF, u_objref.u_custom); + if (IsEqualCLSID(&marshaler_clsid, &CLSID_DfMarshal)) + /* add on the size of the common header */ + *pulSize += FIELD_OFFSET(OBJREF, u_objref); + else + /* custom marshaling: add on the size of the whole OBJREF structure + * like native does */ + *pulSize += sizeof(OBJREF);
IMarshal_Release(pMarshal); return hr;