Commit Graph

49 Commits

Author SHA1 Message Date
Rob Shearman 67a213fc1e oleaut32: Try to re-use existing memory when unmarshalling variants with byref types. 2007-12-07 16:34:28 +01:00
Rob Shearman baccba317e oleaut32: Don't call SafeArrayAllocData in LPSAFEARRAY_UserUnmarshal if we called SafeArrayCreateEx instead of SafeArrayAllocDescriptor.
Otherwise, we'll leak memory.
2007-12-07 16:34:23 +01:00
Rob Shearman 6539b3801d oleaut32: Handle non-byref safe arrays in VARIANT_UserFree. 2007-11-12 12:54:04 +01:00
Dan Hipschman 9d7b34c192 oleaut32: Use widl to generate oaidl_p.c. 2007-10-25 13:33:37 +02:00
Dan Hipschman 816f993288 oleaut32: Add stubs for IPropertyBag_Read. 2007-10-24 13:52:16 +02:00
Andrew Talbot 61fde63fce oleaut32: Constify some variables. 2007-08-03 12:38:26 +02:00
Andrew Talbot 582ae3f3c9 oleaut32: Constify some variables. 2007-08-02 12:18:41 +02:00
Huw Davies da98b1cb61 oleaut32: Handle marshaling of VARTYPE-less FADF_VARIANT safearrays. 2007-06-25 11:34:39 +02:00
Huw Davies 3c8534f013 oleaut32: Implement marshaling of VT_BYREF interfaces. 2007-06-25 11:34:33 +02:00
Rob Shearman bb08a58965 oleaut32: Clear the input pvar structure in VARIANT_UserUnmarshal to free the data instead of just initializing. 2007-03-20 12:57:42 +01:00
Huw Davies 2dd3aa6293 oleaut32: Fix marshaling of VARTYPE-less safearrays. 2007-02-05 12:26:14 +01:00
Dmitry Timoshkov 601bf6ea12 oleaut32: Make some data const and static. 2006-11-28 12:36:20 +01:00
Michael Stefaniuc 9d625ad0e4 oleaut32: Fix the warnings introduced by the "unsigned long" to "ULONG" header changes. 2006-11-09 10:43:41 +01:00
Michael Stefaniuc cc234847d0 widl: Use ULONG instead of unsigned long when generating declarations for *_UserFree() functions. This is needed for Win64 compatibility. 2006-11-09 10:43:23 +01:00
Michael Stefaniuc 6f95047034 widl: Use ULONG instead of unsigned long when generating declarations for *_UserUnMarshal() functions. This is needed for Win64 compatibility. 2006-11-09 10:43:20 +01:00
Michael Stefaniuc 05b1aac100 widl: Use ULONG instead of unsigned long when generating declarations for *_UserMarshal() functions. This is needed for Win64 compatibility. 2006-11-09 10:43:16 +01:00
Michael Stefaniuc 177aaf6738 widl: Use ULONG instead of unsigned long when generating declarations for *_UserSize() functions. This is needed for Win64 compatibility. 2006-11-09 10:43:12 +01:00
Hans Leidekker ce66f5d684 oleaut32: Win64 printf format warning fixes. 2006-10-13 12:08:47 +02:00
James Hawkins 99e2c6dff2 janitorial: Remove redundant NULL checks before CoTaskMemFree (found by Smatch). 2006-10-07 17:52:51 +02:00
Alexandre Julliard 707060913c oleaut32: Use the standard DEFINE_OLEGUID macro to define GUIDs. 2006-06-09 21:09:35 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Huw Davies 40986cd729 oleaut32: Correctly handle the case when the number of bytes in a BSTR is odd. 2006-05-10 19:24:01 +02:00
Huw Davies df40c966a0 oleaut32: Preserve the 'auto' features before copying over the masked unmarshaled ones. 2006-05-08 21:18:32 +02:00
Huw Davies c7bb8bd4fe oleaut32: Implement GetVarDesc_Proxy and friends. 2006-05-08 14:50:42 +02:00
Huw Davies 9235ae2ecd oleaut32: Change CLEANLOCALSTORAGE flag constants to their character
constant equivalents.  It's now obvious why these were chosen.  Should
be a NOP.
2006-05-08 14:50:34 +02:00
Huw Davies 3abd27c624 oleaut32: Fix VARIANT_UserFree. 2006-05-07 10:11:06 +02:00
Huw Davies 696f73a7f5 oleaut32: Rewrite VARIANT user marshaling. 2006-05-07 10:10:30 +02:00
Huw Davies 17ec77f19e oleaut32: Alignment fixes for safearrays. 2006-05-05 21:47:13 +02:00
Huw Davies 2e8a74d520 oleaut32: Fix BSTR marshaling to be wire compatible with Windows. 2006-05-05 21:46:32 +02:00
Huw Davies e783531ec2 oleaut32: Implement GetDocumentation_Proxy/Stub. 2006-05-05 17:04:09 +02:00
Huw Davies 5e69b5d9ff oleaut32: Implement GetFuncDesc_Proxy and friends. 2006-05-05 17:03:52 +02:00
Huw Davies 32a626fdbd oleaut32: Implement GetTypeAttr_Proxy and friends. 2006-05-05 16:56:01 +02:00
Huw Davies 195ae60e97 oleaut32: Implement CLEANLOCALSTORAGE marshalling and fix GetLibAttr to use it.
Based on some documentation by Rob Shearman.
2006-04-19 19:17:49 +02:00
Robert Shearman 50a9c208c6 oleaut32: Fix differences between the size returned in sizing the
buffer for interfaces and the buffer actually used.
2006-04-18 16:49:01 +02:00
Robert Shearman a963fd6285 oleaut32: Initialise BSTR pointer to NULL in VARIANT_UserUnmarshal.
Initialise BSTR pointer to NULL before calling BSTR_UserUnmarshal,
otherwise BSTR_UserUnmarshal will try to use the memory in the
pointer.
2006-04-18 16:48:48 +02:00
Robert Shearman cca69647a3 oleaut32: Fix typo in LPSAFEARRAY_Unmarshal.
Fix typo in LPSAFEARRAY_Unmarshal where the check for the failure of
the SafeArrayCreateEx call was missing a dereference operator (found
by Coverity).
2006-04-07 13:09:23 +02:00
Robert Shearman 385e693e44 ole: Test and implement LPSAFEARRAY marshaling. 2006-01-27 12:54:22 +01:00
Huw Davies 0fb5729693 Deal with pExcepInfo == NULL. 2005-10-31 15:43:53 +00:00
Huw Davies f630f97842 Proxies and stubs for GetTypeInfoCont, GetLibAttr and ReleaseLibAttr. 2005-10-20 11:35:30 +00:00
Huw Davies c0cd7dc6fa Implement GetContainingTypelib_{Proxy,Stub}. 2005-10-18 14:09:58 +00:00
Robert Shearman f6daf49061 Add VT_UNKNOWN support for VARIANT marshaling by generalising the
existing VT_DISPATCH code.
2005-09-02 11:18:57 +00:00
Robert Shearman 1a76541733 - Don't print out cryptic message if IDispatch or IUnknown object is
just NULL.
- puArgErr is a ref pointer so we have to provide a dummy pointer if
  it is NULL.
- Fail gracefully and notify caller if we ran out of memoy or if
  variant copying failed.
2005-06-12 10:42:36 +00:00
Jon Griffiths 743fb99a9f Use variant macros instead of accessing the union directly. 2005-02-22 14:54:01 +00:00
Francois Gouget 486d020c1b Don't define COBJMACROS in objbase.h.
Update the Wine sources accordingly.
2004-10-07 03:06:48 +00:00
Mike Hearn 0307701201 Implement dispatch variant marshalling. 2003-09-12 00:22:55 +00:00
Alexandre Julliard e37c6e18d0 Fixed header dependencies to be fully compatible with the Windows
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Francois Gouget f803e2a92d Fix miscellaneous spelling errors and typos. 2003-05-13 00:41:57 +00:00
Alexandre Julliard 8f6727c57d Added NONAMELESSUNION/STRUCT defines. 2003-04-27 00:40:47 +00:00
Ove Kaaven 899fafca82 Preliminary implementation of proper IDispatch marshalling. 2003-04-26 02:11:41 +00:00