Commit Graph

281 Commits

Author SHA1 Message Date
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
Rob Shearman
b5c78d0dff oleaut32: Rewrite MSFT_ReadName and MSFT_ReadString to need one less allocation and to fix a memory leak. 2006-10-23 15:18:56 +02:00
Rob Shearman
b3d024a7bb oleaut32: Free allocated memory on typelib and typeinfo destruction. 2006-10-23 15:18:38 +02:00
Dmitry Timoshkov
20c40e0659 oleaut32: Make QueryPathOfRegTypeLib test pass under Wine. 2006-10-23 15:16:55 +02:00
Francois Gouget
ef998ea6cb Assorted spelling fixes. 2006-10-16 11:33:38 +02:00
Michael Stefaniuc
15765dd953 The Data1 member of the GUID struct needs to be an unsigned int too for Win64 compatibility. 2006-10-16 10:53:04 +02:00
Hans Leidekker
ce66f5d684 oleaut32: Win64 printf format warning fixes. 2006-10-13 12:08:47 +02:00
Huw Davies
03ec218326 oleaut32: Implement ITypeInfo_CreateInstance. 2006-10-09 20:38:41 +02:00
Robert Shearman
dd70c0ae7c oleaut32: Fix ITypeInfo::GetFuncDesc to return the correct information for dual dispinterfaces. 2006-10-02 21:38:12 +02:00
Robert Shearman
65ca6a2f4d oleaut32: Make ITypeInfo::GetDocumentation work for functions/variables in inherited interfaces. 2006-10-02 21:38:07 +02:00
Andrew Talbot
0e9c97eba3 oleaut32: Cast-qual warnings fix. 2006-09-25 18:15:39 +02:00
Robert Shearman
b7e88d8f8b oleaut32: Fix a leak of the module reference count. 2006-09-07 10:16:47 +02:00
Benjamin Arai
d1282dce88 oleaut32: Add support for handling TKIND_COCLASS in userdefined_to_variantvt. 2006-08-22 12:00:01 +02:00
Stefan Siebert
9776f5b83f oleaut32: GetTypeInfoType - Return TYPE_E_ELEMENTNOTFOUND if index out of bounds. 2006-08-03 19:56:22 +02:00
Robert Shearman
40556ae08f oleaut32: Improve dump_DispParms. 2006-07-31 21:27:29 +02:00
Robert Shearman
33582cc69e oleaut32: Add some validation for the DISPPARAMS structure in ITypeInfo::Invoke. 2006-07-31 21:25:44 +02:00
Robert Shearman
eb885a750f oleaut32: Initialize pRetVal in ITypeInfo::Invoke before calling VariantCopyInd
as native doesn't assume that it doesn't contain valid data.
2006-07-24 13:46:57 +02:00
Robert Shearman
ad6b0dc281 oleaut32: Revert check for FUNCFLAG_FRESTRICTED in ITypeInfo::Invoke.
The change caused regressions in a number of applications and needs more 
study to see what the correct behaviour should be.
2006-07-18 11:12:35 +02:00
Robert Shearman
31f640274f oleaut32: Don't execute a function in ITypeInfo::Invoke if it has the FUNCFLAG_FRESTRICTED flag.
Add some more tests for ITypeInfo::Invoke.
2006-07-14 12:39:02 +02:00
Robert Shearman
f9c9a2bf3d oleaut32: Convert void return types to the VT_EMPTY variant type in ITypeInfo::Invoke. 2006-07-13 16:26:19 +02:00
Robert Shearman
797bdbc2d9 oleaut32: Typelib interfaces with the FDUAL flag should also be registered,
since dispinterfaces don't have the FDISPATCHABLE flag.
2006-07-13 16:26:12 +02:00
Robert Shearman
688c6a78f1 oleaut32: MSFT_DoFuncs: "reclength" of the function information record is stored
in a 16 bit int and not in a 8 bit int as previously supposed, using a 0x1ff
mask. Upper 16 bits contains the ordinal number of the function. 
Allocation of the "recbuf" must be modified, to support larger data
(based on a patch by White Snake <whitesnake78@mail.com>).
2006-07-10 11:53:03 +02:00
Robert Shearman
ef7b6e2740 oleaut32: ITypeComp_fnBind should do case-insensitive compares on the name passed in. 2006-07-07 13:31:43 +02:00
Robert Shearman
dd677948b4 oleaut32: Fix the error code returned by ITypeComp on an interface when the name matches, but the flags don't. 2006-07-07 13:30:46 +02:00
Robert Shearman
65639ab722 oleaut: Implement processing of modules for SLTG typelibs.
Set funckind when processing SLTG functions.
2006-07-05 11:48:41 +02:00
Robert Shearman
3f97460c2b oleaut: Improve SLTG var support.
Pass both the start of the block and the offset to the first item into
SLTG_DoVars as they may be different.
Process 0xfffe offsets for variable names - this means to use the
previous name.
Add support for parsing the optional varflags field.
2006-07-05 11:48:29 +02:00
Robert Shearman
4b6b51ae99 oleaut: Fix function support for SLTG dispinterfaces. 2006-07-05 11:48:13 +02:00
Robert Shearman
f2eb2d2309 oleaut: Move the processing of functions in SLTG typelibs into a
separate function and use it when processing dispinterfaces.
2006-07-05 11:48:03 +02:00
Robert Shearman
8a50262fdb oleaut: Move the initialisation of memidConstructor and
memidDestructor of type infos to the common ITypeInfo creation
function.

Remove the WARN message as this functionality isn't implemented in
native either.
2006-07-05 11:47:52 +02:00
Robert Shearman
92b468e810 oleaut: Process references for SLTG dispatch types. 2006-07-05 11:46:20 +02:00
Robert Shearman
e4188e8846 oleaut: Abstract out the processing of variables in SLTG typelib components to a common function. 2006-07-05 11:46:07 +02:00
Robert Shearman
bc6acf5c1d oleaut: Process references when parsing SLTG alias types. 2006-07-05 11:45:35 +02:00
Robert Shearman
23e089a09f oleaut: Rename SLTG_DoType to SLTG_DoElem and split out the common TYPEDESC generating code to SLTG_DoType.
Process SLTG alias types with SLTG_DoType as the data is stored in the
same format as in other components of the typelib.
2006-07-05 11:45:22 +02:00
Robert Shearman
663fb8bd56 oleaut: The SLTG_MemberHeader and SLTG_TypeInfoTail structures are
common to all elements, so move the processing of these from the
individual element processing.

Improve SLTG alias processing.
2006-07-05 11:45:08 +02:00
Robert Shearman
283049b8fc oleaut: Document some more members of SLTG_TypeInfoTail. 2006-07-05 11:44:33 +02:00
Robert Shearman
2fa3cc03a5 oleaut32: Fix a typo where the FIXME doesn't match the code. 2006-06-30 20:43:56 +02:00
Robert Shearman
166a91b12d oleaut32: RegisterTypeLib should register any interface that derives
from IDispatch rather than just dual interfaces.

This is hinted at, although not explicitly stated on MSDN, but was 
verified by tests with native oleaut32.
2006-06-29 14:40:01 +02:00
Juan Lang
24dd931a56 oleaut32: Handle bstr length of -1 in typelibs. 2006-06-28 16:53:28 +02:00
Alexandre Julliard
707060913c oleaut32: Use the standard DEFINE_OLEGUID macro to define GUIDs. 2006-06-09 21:09:35 +02:00
James Hawkins
585763ffa9 oleaut32: Only BYREF DispCallFunc args whose input args are not BYREF should be changed. 2006-06-06 11:46:14 +02:00