Commit Graph

320 Commits

Author SHA1 Message Date
Rob Shearman
501da4fa2a oleaut32: Dump symbolic names for VT_LPSTR and VT_LPWSTR in dump_TypeDesc. 2008-07-01 12:26:22 +02:00
Rob Shearman
a2c1bdf1f8 oleaut32: Load string constants correctly from SLTG typelibs. 2008-07-01 12:26:17 +02:00
Rob Shearman
45989a1ff1 oleaut32: Implement the 0x08 flag in SLTG_DoVars.
It means that the data is stored directly in pItem->byte_offs instead
of the byte offset pointed to by it.
2008-07-01 12:26:11 +02:00
Austin English
c531e2abdb Spelling fixes. 2008-04-23 12:31:07 +02:00
Andrew Talbot
ba742868e5 oleaut32: Remove unused variables. 2008-04-23 12:23:27 +02:00
Austin English
e8dbd66c23 oleaut32: Spelling fixes. 2008-04-14 21:28:38 +02:00
Francois Gouget
8a18e0e43a Assorted spelling fixes. 2008-04-07 13:36:18 +02:00
Rob Shearman
a35dfc4510 oleaut32: Fix the return type of TLB_ReadTypeLib. 2008-03-15 10:58:38 +01:00
Rob Shearman
0ec1e2842a oleaut32: Split the methods for opening different sources of typelibs out of TLB_ReadTypeLib. 2008-03-12 19:21:15 +01:00
Andrew Talbot
9d16a42210 oleaut32: Assign to structs instead of using memcpy. 2008-03-12 11:59:27 +01:00
Andrew Talbot
5ea25c62b8 oleaut32: Remove unneeded casts. 2008-01-16 12:16:01 +01:00
Rob Shearman
e68371040f oleaut32: Introduce a new helper function, TLB_FreeCustData, for freeing custom data.
Fix memory leaks caused by the variable and interface custom data not 
being freed properly.
2007-11-28 11:14:13 +01:00
Rob Shearman
aaa6c4007f oleaut32: Free the correct custom data inside ITypeInfo_fnRelease.
Since the code is inside the loop for function data, it should be 
freeing the function's custom data, not the interface's.
2007-11-28 11:14:07 +01:00
Gerald Pfeifer
48d839822b oleaut32: Simplify two conditions based on the fact that unsigned variables cannot be negative. 2007-11-26 13:55:18 +01:00
Francois Gouget
c4b1195c0c Assorted spelling fixes. 2007-10-23 18:20:27 +02:00
Mikolaj Zalewski
bda66cc37a oleaut32: Function kind for dispatch interfaces should be FUNC_DISPATCH. 2007-10-10 21:33:38 +02:00
Andrew Talbot
4ed64d381c oleaut32: Constify some variables. 2007-07-31 22:24:46 +02:00
Andrew Talbot
36720b4945 oleaut32: Constify some variables. 2007-07-30 13:38:39 +02:00
Huw Davies
ec35568970 oleaut32: Extend _invoke to cope with more args. 2007-06-25 11:34:49 +02:00
Huw Davies
17fca45d41 oleaut32: Interfaces that derive from IDispatch should be marshaled as VT_DISPATCH. 2007-06-25 11:34:23 +02:00
Michael Stefaniuc
34b45b311e oleaut32: Do not use wide character constants. 2007-06-22 12:18:50 +02:00
Misha Koshelev
428ed94fa9 oleaut32: Add support for vararg functions in ITypeInfo::Invoke. 2007-06-07 13:00:09 +02:00
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
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
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
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
9afcaf2ae1 oleaut32: Type references are global to the typelib. 2007-05-17 12:44:44 +02: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
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
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
Rob Shearman
8f38cd8c8c oleaut32: Fix the missing argument handling for non-byref variant arguments. 2007-02-06 21:36:34 +01:00
Rob Shearman
e2108feec4 oleaut32: If an error info object was created when the invoked method failed then fill in exception info from the error info object. 2007-02-06 21:36:13 +01:00
Huw Davies
a09cd1b88a oleaut32: Call SearchPath before LoadLibrary so that we get the full path of native exes and dlls.
For builtin dlls prepend the system directory.
2007-02-06 20:23:16 +01:00
Huw Davies
a59e4899f5 oleaut32: The typelib version numbers should be written to the registry in hex. 2007-01-25 11:05:46 +01:00
Andrew Talbot
d6fc116475 oleaut32: Declare some items static. 2007-01-22 12:08:55 +01:00
Dmitry Timoshkov
601bf6ea12 oleaut32: Make some data const and static. 2006-11-28 12:36:20 +01:00
Alex Villacís Lasso
64410e5907 oleaut32: typelib - fix regression in MSFT typelib parsing. 2006-11-09 10:44:13 +01:00
Francois Gouget
30e44c85c8 Assorted spelling fixes. 2006-11-07 15:25:24 +01:00
Rob Shearman
7f71545835 oleaut32: Update comments at the top of typelib.c and remove "stub" from several traces that are in implemented functions. 2006-10-27 11:59:50 +02:00
Rob Shearman
47bf80da8c oleaut32: Fix a crash in dump_DispParms when running the typelib test with debug tracing on. 2006-10-24 17:46:56 +02:00
Rob Shearman
aa203f0919 oleaut32: Free the array subscript memory for type descriptions when freeing the typelib. 2006-10-24 17:46:49 +02:00
Rob Shearman
a26af4861d oleaut32: Fix a reference count leak in CreateDispTypeInfo. 2006-10-24 17:46:34 +02:00
Rob Shearman
d72ef78fa6 oleaut32: Initialise all members of the FUNCDESC structure in CreateDispTypeInfo. 2006-10-24 17:46:27 +02:00
Rob Shearman
053b6b21b6 oleaut32: Fix two more leaks on type info destruction. 2006-10-23 15:19:02 +02:00