Commit Graph

1094 Commits

Author SHA1 Message Date
Rob Shearman e98ec6db4c oleaut32: Fix the references in function descriptions returned for dual IDispatch interfaces.
Do this by changing references from other interfaces (and possibly other 
typelibs) to uniquely identify them.

Add special handling to GetRefTypeInfo to cope with this.
2007-05-30 11:51:54 +02:00
Rob Shearman bacf5c640f oleaut32: For automatic-value-getting in ITypeInfo::Invoke, it doesn't matter what flag(s) the function was executed with, just what type of function is being invoked. 2007-05-30 11:51:37 +02:00
Francois Gouget fa48cb042c Assorted spelling fixes. 2007-05-29 13:47:18 +02:00
Francois Gouget ffbf92f5f2 oleaut32/tests: Fix the Visual C++ double to float conversion warnings. 2007-05-29 13:47:09 +02:00
Dmitry Timoshkov 8bf41d88c8 oleaut32: Add support for loading and drawing metafiles. 2007-05-29 11:56:18 +02:00
Huw Davies cd3df383a5 oleaut32: SLTG references are only unique at the typeinfo level, so convert them to be unique to the typelib. 2007-05-25 19:37:12 +02:00
Marcus Meissner 46d94653f1 oleau32: Fix one entry overflow (Coverity). 2007-05-23 12:51:33 +02:00
Huw Davies c1e89400aa oleaut32: Recurse through the impltype list so that dispinterfaces get the correct parents. 2007-05-18 19:59:35 +02:00
Huw Davies b698b2909b oleaut32: Fix CreateDispTypeInfo to store the correct number of functions. 2007-05-18 19:59:29 +02:00
Huw Davies c24a53dc28 oleaut32: non-dual dispinterfaces should be marshaled via IDispatch. 2007-05-18 19:59:21 +02:00
Huw Davies f1da672df3 oleaut32: Move the proxy thunk creation code to a separate function. 2007-05-18 19:59:12 +02:00
Huw Davies 117f21de45 oleaut32: Test for interface that derives from IUnknown. 2007-05-18 19:57:53 +02:00
Huw Davies 04a76cf561 oleaut32: Tests for more 'syntax 2' dispinterfaces. 2007-05-18 19:57:46 +02:00
Huw Davies 78bf6946ba oleaut32: GetRefTypeOfImplType(0) on TKIND_DISPATCH typeinfos should always return an href to IDispatch. 2007-05-18 19:57:34 +02:00
Huw Davies 356970e529 oleaut32: Fix return value in the element not found case. 2007-05-18 19:57:25 +02:00
Huw Davies a3b8be05b7 oleaut32: Typelib inheritance tests. 2007-05-18 19:57:18 +02:00
Juan Lang 37386dba7a oleaut32: Don't mix allocation routines. 2007-05-18 14:11:17 +02:00
Huw Davies 9afcaf2ae1 oleaut32: Type references are global to the typelib. 2007-05-17 12:44:44 +02:00
Andrew Talbot 048a5d6fc5 oleaut32: Exclude unused headers. 2007-05-16 11:55:58 +02:00
Bill Medland 804d0139b7 oleaut32/tests: Some boundary tests on VarBstrFromDate. 2007-05-04 13:39:22 +02:00
Huw Davies c4c5d64ccf oleaut32: Remove useless initialization of an [out] parameter. 2007-04-30 12:19:17 +02:00
Huw Davies 294b3ebba1 oleaut32: Rewrite get_funcdesc to avoid using the funcdesc's oVft member so that it works correctly for non-dual dispinterfaces. 2007-04-26 16:42:26 +02:00
Huw Davies b8a50daec7 oleaut32: Don't try to free the typeinfo if get_funcdesc fails. 2007-04-26 16:42:22 +02:00
Andrew Talbot 321c21c5c8 oleaut32: Remove superfluous semicolons. 2007-04-13 12:58:58 +02:00
Francois Gouget 1f692cdcaa oleaut32/tests: Fix compilation on systems that don't support nameless structs or unions. 2007-04-11 12:54:30 +02:00
Rob Shearman 15a1723c1a ole32: In 16-bit OLE, LPOLESTR uses multibyte, not Unicode characters so make LoadTypeLib16 take an LPSTR instead of LPOLESTR. 2007-04-04 21:28:41 +02:00
Jason Edmeades 94b9b6146d oleaut32: Convert to VT_DECIMAL fails with overflow (with test). 2007-04-03 11:32:57 +02:00
Paul Vriens 03d637a305 oleaut32/tests: Use skip. 2007-03-26 12:20:58 +02:00
Andrew Talbot cae5c216a5 oleaut32: Replace inline static with static inline. 2007-03-23 12:29:49 +01: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
Rob Shearman 3ad77d29ca oleaut32: Make the VARIANT_UserUnmarshal tests work on XP. 2007-03-20 12:56:52 +01:00
Rob Shearman 35772a70d3 oleaut32: Add some tests for user marshaling a VT_UNKNOWN variant. 2007-03-20 12:56:45 +01:00
Jan Zerebecki 1e176b4739 oleaut32: Add DebugInfo to critical sections. 2007-03-12 13:39:07 +01:00
Stefan Huehner 51a7ca3440 Change some functions arguments from () -> (void). 2007-03-12 12:25:31 +01:00
Rob Shearman 5edc7fd5ef oleaut32: TKIND_COCLASS parameters to Invoke'd functions should be converted into VT_DISPATCH instead of VT_UNKNOWN.
Add a test for this.
2007-03-08 13:50:45 +01:00
Huw Davies d5664881e5 oleaut32: Fix a TypeAttr leak. 2007-02-21 19:48:33 +01:00
Rob Shearman e79b8b8fcd oleaut32: Re-arrange the position of functions and vtables in olefont.c to avoid forward-declarations. 2007-02-20 20:23:30 +01:00
Rob Shearman 4c40b3974c oleaut32: Fix IFont::AddRefHFont and IFont::ReleaseRefHFont.
The tests show that there is a global cache that keeps references to 
HFONTs that is released when all IFont objects are released.
(Based on a patch by Benjamin Arai.)
2007-02-20 20:23:24 +01:00
Francois Gouget 536e738552 Assorted spelling fixes. 2007-02-14 21:03:57 +01:00
Alexandre Julliard 1df72cc794 Make.rules: Automatically generate the header for all types of idl sources. 2007-02-09 14:32:57 +01:00
Rob Shearman 30b6f9acd6 oleaut32: Fix the return value of ITypeInfo::Invoke when the property-put named argument isn't DISPID_PROPERTYPUT. 2007-02-08 12:59:36 +01:00
Rob Shearman a3235dd1d4 oleaut32: Implement automatic value getting in ITypeInfo::Invoke.
If an IDispatch object is returned from in the retval for a propget 
function and an extra parameter was passed in to ITypeInfo::Invoke then 
it should call IDispatch::Invoke on the returned object with the extra 
parameter to retrieve the value of the object, which is then returned in 
pVarResult.
2007-02-08 12:59:32 +01:00
Rob Shearman 8b43f8bec9 oleaut32: Fix the IDL for the "Value" method in the tmarshal tests. 2007-02-08 12:59:26 +01:00
Rob Shearman d794398e73 oleaut32: Comment out "dual" attribute of IKindaEnumWidget in tmarshal test to cause the interface to be marshaled correctly.
This fixes a bunch of tmarshal tests.
2007-02-08 12:59:23 +01:00
Rob Shearman d2a38cef99 oleaut32: Always register the typelib for the tmarshal tests. 2007-02-08 12:58:35 +01:00
Rob Shearman 7574fede93 oleaut32: Fix a one-off test failure in the tmarshal tests - TYPE_E_LIBNOTREGISTERED is an expected return value. 2007-02-07 21:45:12 +01:00
Rob Shearman 0f45b2badf oleaut32: A value of PARAMFLAG_FNONE for wParamFlags means that the parameter is also marshaled and unmarshaled in the PARAMFLAG_FOUT case. 2007-02-07 21:45:06 +01:00
Rob Shearman e88d033044 oleaut32: Ignore the first named argument when invoking property-put methods
as it is mandatory and doesn't indicate that the arguments will be
passed in as named ones.
2007-02-06 22:06:16 +01:00
Rob Shearman 21140a9a53 oleaut32: Add support for named arguments in ITypeInfo::Invoke. 2007-02-06 22:05:59 +01:00
Rob Shearman 702e2c6dc2 oleaut32: Copy the value directly returned from the called function
if it is not an HRESULT value, instead of getting it from a [retval]
attribute.
2007-02-06 22:05:50 +01:00