Commit Graph

828 Commits

Author SHA1 Message Date
Robert Shearman 74407105d2 Check the return value from register_key_guid in all the DLL registering code. 2006-05-10 19:38:04 +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 86d9457cdc oleaut32: Support VT_SAFEARRAY in the typelib marshaler.
Based on a patch by Rob Shearman.
2006-05-10 19:23:43 +02:00
Huw Davies d0bdf685f5 oleaut32: Add a function to grow the marshal state buffer to a specified size. 2006-05-10 19:23:29 +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 2898b5d9ad oleaut32: Remove weird attempt to clear VT_VARIANT.
Add some tests.
2006-05-07 10:10:56 +02:00
Huw Davies 696f73a7f5 oleaut32: Rewrite VARIANT user marshaling. 2006-05-07 10:10:30 +02:00
Robert Shearman 6c6ce70260 oleaut32: Check the return value from VariantCopy when copying values
for VT_VARIANT typed parameters for ITypeInfo::Invoke.
2006-05-05 21:51:11 +02:00
Robert Shearman 5e8c877f96 oleaut32: Support values being passed into VT_VARIANT|VT_BYREF typed parameters in ITypeInfo::Invoke. 2006-05-05 21:50:58 +02:00
Huw Davies 17ec77f19e oleaut32: Alignment fixes for safearrays. 2006-05-05 21:47:13 +02:00
Huw Davies 74b63d5e0d oleaut32: Fix tests under win2k. 2006-05-05 21:47:02 +02:00
Huw Davies 747f08c8ae oleaut32: Split out the SAFEARRAY and BSTR tests so that they can be used in the upcoming VARIANT tests. 2006-05-05 21:46:47 +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
Antonio Codazzi 135ca99f88 oleaut32: Added Esperanto language. 2006-04-11 11:27:47 +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 f74dfe3182 oleaut32: Remove deadcode in SafeArrayPutElement.
Remove deadcode in SafeArrayPutElement, as lpBstr cannot be NULL
because of the check at the top of the function on pvData (found by
Coverity).
2006-04-07 13:09:08 +02:00
Mike McCormack e0276035a4 oleaut32: Remove unnecessary check for NULL. 2006-04-07 11:46:04 +02:00
Robert Shearman 22e7eeb2a3 oleaut32: Add IPersist to QueryInterface. 2006-03-30 12:43:52 +02:00
Robert Shearman 11c83c5d5e oleaut32: Zero out parameter in LoadRegTypeLib in case of failure. 2006-03-30 12:43:38 +02:00
Robert Shearman aa2214626e oleaut32: Replace memcmp with IsEqualIID macro.
Replace memcmp with IsEqualIID macro that doesn't require a size
parameter and remove the unneeded brackets to give more compact and
more readable code.
2006-03-30 12:43:33 +02:00
Francois Gouget 6bddeb1cf7 Assorted spelling fixes. 2006-03-21 20:10:39 +01:00
Robert Shearman 4b19449b6b oleaut: ITypeInfo::GetIDsOfNames should search inherited interfaces
regardless of what type they are.

Add a test for this and dump type infos created with CreateDispTypeInfo.
2006-03-21 20:02:11 +01:00
Robert Shearman 264b122d52 oleaut: Better support for invoking methods with VT_VARIANT argument types. 2006-03-21 16:19:06 +01:00
Francois Gouget 74b6aba216 oleaut32: Reorder a few functions to avoid forward declaractions. 2006-03-09 12:51:42 +01:00
Robert Shearman b3a8a3d559 oleaut: Implement VarBstrFromDisp. 2006-03-06 11:10:26 +01:00
Robert Shearman 93acfeb7f0 oleaut: Fix VarFormat for VT_NULL variants. 2006-03-06 11:09:54 +01:00
Robert Shearman e5b2c14665 oleaut: Add some more VarFormat tests and fix the VarMod decimal test. 2006-03-06 11:08:32 +01:00
Robert Shearman 08764dde8a oleaut: Split OLEPictureImpl_Load.
Split OLEPictureImpl_Load into separate functions for the different file
types.
2006-03-06 11:08:19 +01:00
Robert Shearman 269909f53e oleaut: Use IsEqualIID in connpt.c instead of memcmp for comparing IIDs. 2006-03-01 19:54:09 +01:00
Robert Shearman 7fbca4c111 oleaut: Fix standard font cloning.
Create new empty connection points on clone of the standard Font
(based on a patch by Alex Villacís Lasso).
2006-02-24 11:23:03 +01:00
Robert Shearman 6ad326a607 oleaut: Test some error conditions in ITypeInfo::GetIDsOfNames and ITypeInfo::Invoke. 2006-02-16 19:33:08 +01:00
Robert Shearman d16c0dc6ce oleaut32: Free connection point on destruction of the picture object.
Handle failure of CreateConnectionPoint on construction.
2006-02-14 11:34:00 +01:00
Robert Shearman 1ce38682fb oleaut32: Fix returning Typelib file name.
We can't use GetModuleFileName on a resource-only module, so the best
we can do is to copy the original name we used to find the type
library.  Fix a couple of places where we were incorrectly using the
file name, rather than the path.
2006-02-14 11:33:40 +01:00
Robert Shearman 1891e137da oleaut32: Free the connection points on destruction of the font object.
Free the connection points on destruction of the font object and cope
with failure of CreateConnectionPoint on construction.
2006-02-14 11:33:18 +01:00
Robert Shearman 9030ff2c13 oleaut32: Don't try to release NULL COM objects in the typelib
marshaler.
2006-02-14 11:33:03 +01:00
Robert Shearman 792d89f53a oleaut32: Fix flag comparison in Picture Invoke.
One or more invoke flags can be passed into IDispatch::Invoke, but we
only care if INVOKEFLAG_PROPERTYGET is specified, and don't about any
others.
2006-02-14 11:32:53 +01:00
Francois Gouget 90aaf6ba8f include: Add missing LANG_xxx and SUBLANG_xxx constants. 2006-02-14 10:42:12 +01:00
Robert Shearman 98fd1c5678 Return the correct error code from IConnectionPointContainer::FindConnectionPoint. 2006-02-10 14:51:30 +01:00
Robert Shearman f4acfe9a53 oleaut: Partially implement Invoke on the standard picture implementation. 2006-02-10 14:51:03 +01:00
Robert Shearman 265f042801 oleaut: Fix importing the IDispatch interface for TKIND_DISPATCH type infos.
Fix importing the IDispatch interface for TKIND_DISPATCH type infos
when the offset isn't specified. It should be fetched from the
dispatch offset stored in the header, rather than using a hack that
doesn't work.
2006-02-10 14:50:53 +01:00
Robert Shearman bcac0cd5d5 oleaut: Add tests for IFontEventsDisp. 2006-02-10 14:50:40 +01:00