Dmitry Timoshkov
d3d6f94ab1
oleaut32: ICreateTypeInfo2::AddVarDesc() should handle failure of allocation and initialization of a variant description.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-01 22:34:31 +02:00
Nikolay Sivov
e3ef9b5426
oleaut32: Added ICreateTypeInfo2::DeleteFuncDesc().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-05 15:38:22 +01:00
Nikolay Sivov
c4a9a296ba
oleaut32: Use wide-char string literals.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-26 21:31:53 +01:00
Kevin Puetz
65d917402f
oleaut32: Load GetVarCustData from MSFT-format typelib.
...
Signed-off-by: Kevin Puetz <PuetzKevinA@JohnDeere.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-18 22:27:51 +01:00
Kevin Puetz
cd38abc455
oleaut32: Fix error handling/reporting in TLB_copy_all_custdata.
...
VariantCopy clears existing contents of pvargDest and thus requires
it contain a valid (possibly-empty) VARIANT, not uninitialized garbage.
If a failure still occurs, propgate the HRESULT to GetAll*CustData.
Signed-off-by: Kevin Puetz <PuetzKevinA@JohnDeere.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-18 22:27:51 +01:00
Kevin Puetz
477fc581de
oleaut32: Make GetNames omit same parameters as GetFuncDesc.
...
GetFuncDesc removes parameters which are handled specially by Invoke;
GetNames should also consistently omit their names.
Signed-off-by: Kevin Puetz <PuetzKevinA@JohnDeere.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-28 13:23:43 +02:00
Kevin Puetz
269207e6fd
oleaut32: Omit [lcid] parameter when rewriting FUNCDESC to FUNC_DISPATCH.
...
[lcid] parameters are supplied from IDispatch::Invoke's parameters,
rather than via DISPPARAMS::rgvargs[] and should also be removed
from the FUNC_DISPATCH translation.
Signed-off-by: Kevin Puetz <PuetzKevinA@JohnDeere.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-28 13:23:43 +02:00
Kevin Puetz
9bc78976d9
oleaut32: Overwrite return type when rewriting FUNCDESC to FUNC_DISPATCH.
...
A [retval] parameter overwrites any return type, not just HRESULT.
But HRESULT is special even without a [retval] to replace it;
it's translated into pExcepInfo and so the return type becomes void.
This rewriting should occur only for functions not originally
defined as FUNC_DISPACH (e.g. inherited or [dual]).
A FUNCDESC originally declared as a dispinterface is left as-is,
and might e.g. return HRESULT.
Signed-off-by: Kevin Puetz <PuetzKevinA@JohnDeere.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-28 13:23:43 +02:00
Kevin Puetz
03b1b3920c
oleaut32: FUNC_DISPATCH from dispinterface should have oVft == 0.
...
A dispinterface has no vtbl beyond IDispatch itself.
Signed-off-by: Kevin Puetz <PuetzKevinA@JohnDeere.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-28 13:23:43 +02:00
Puetz Kevin A
380fbe006a
oleaut32: Cut off only non-empty \[0-9]+$ resource-id in RegisterTypeLib.
...
Check if szFullPath ended with '\\' (was explicitly a directory).
Signed-off-by: Kevin Puetz <PuetzKevinA@JohnDeere.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:12 +02:00
Porot Mo
48ef66e9e3
oleaut32: Match funcdesc using both memberid and invkind.
...
Property access functions can share the same memberid.
Signed-off-by: Porot Mo <porotmjp@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-11 15:51:18 +02:00
Huw Davies
e9eb274db2
oleaut32: Return early if there is no matching funcdesc.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-11 15:51:18 +02:00
Jacek Caban
8fac69ba50
oleaut32: Fix handling dual interfaces in ITypeInfo::GetRefTypeInfo.
...
Based on patch by Puetz Kevin.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-26 21:20:14 +01:00
Jacek Caban
db498b3bf2
oleaut32: Use ITypeInfoImpl_GetInternalFuncDesc in a few more places.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-10 22:46:24 +01:00
Jacek Caban
cdb72b091e
oleaut32: Return missing function custom data as VT_EMPTY.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-10 22:46:24 +01:00
Kevin Puetz
af2edc175c
oleaut32: Use ITypeInfoImpl_GetInternalFuncDesc in ITypeInfo2_fnGetFuncCustData.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-10 22:46:24 +01:00
Kevin Puetz
e9f8971398
oleaut32: Return function description as TLBFuncDesc from ITypeInfoImpl_GetInternalDispatchFuncDesc.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-10 22:46:24 +01:00
Jacek Caban
af905ffec9
oleaut32: Move TKIND_DISPATCH logic to ITypeInfoImpl_GetInternalFuncDesc.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-10 22:46:24 +01:00
Kevin Puetz
5ecd6e4807
oleaut32: Fix handling resource IDs in paths when registering typelib helpdir.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-10 22:46:24 +01:00
Kevin Puetz
dc96f63f3f
oleaut32: Search cache for requested typeinfo in GetRefTypeInfo.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-10 22:46:24 +01:00
Kevin Puetz
fa0491f239
oleaut32: Use GetFinalPathNameByHandle to canonicalize file path.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-03 20:48:04 +01:00
Francois Gouget
8ecd037962
oleaut32: Fix the spelling of some comments.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-12 23:17:05 +01:00
Nikolay Sivov
06842c709d
oleaut32/typelib: Simplify variable and function description lookup helpers.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-10 20:59:19 +01:00
Nikolay Sivov
5d05d4acd6
oleaut32/typelib: Get rid of redundant argument in typeinfo lookup helper.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-10 20:59:19 +01:00
Francois Gouget
1a46034c46
oleaut32: Fix the spelling of a FIXME() message.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-09 23:47:46 +01:00
Nikolay Sivov
ae67aa8bbf
oleaut32/typelib: No need to query self for supported interface.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-09 23:47:45 +01:00
Jacek Caban
62ea59774b
oleaut32: Fix sharing options in TLB_ReadTypeLib.
...
Spotted by Donna Whisnant and Kevin Puetz.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-06 22:30:23 +01:00
Nikolay Sivov
8aaa218b47
oleaut32/typelib: Implement DeleteImplType().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-06 22:30:23 +01:00
Nikolay Sivov
81908349d2
oleaut32/typelib: Add a helper to update custom data lists on reallocation.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-06 22:30:23 +01:00
Alexandre Julliard
27e976c4fb
oleaut32: Fix scope of a local array variable.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-31 16:30:29 +01:00
Alexandre Julliard
03a590017e
oleaut32: Fix handling of VARIANT parameters in DispCallFunc() on ARM64.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-29 17:23:02 +01:00
Alexandre Julliard
d01470ad45
oleaut32: Return value pointer needs to be in x8 on ARM64.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-27 12:01:11 +02:00
Alexandre Julliard
71ab74a11f
oleaut32: Implement DispCallFunc() for ARM64.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-26 21:00:13 +02:00
Alexandre Julliard
25d0c66238
oleaut32: Split DispCallFunc() into platform-specific functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-26 21:00:13 +02:00
Kevin Puetz
e10e59fa0e
oleaut32: Fix RegisterTypeLib prototype.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-25 16:30:41 +02:00
Alexandre Julliard
7b82fa1990
oleaut32: Add .seh annotations for x86_64.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-21 11:56:13 +02:00
Alexandre Julliard
aa4ac3ad6c
oleaut32: Build with msvcrt.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-17 09:41:13 +02:00
Alexandre Julliard
d5a372abbb
include: Move inline assembly definitions to a new wine/asm.h header.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-14 13:45:07 +02:00
Piotr Caban
fb30510352
oleaut32: Don't use strcasecmp.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-29 21:25:24 +01:00
Zebediah Figura
f72f8e5c40
oleaut32: Register non-dual dispinterfaces using the correct proxy.
...
Fixes a bug where NetLinx Studio 4 would fail to compile files.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-11 11:52:00 +01:00
Dmitry Timoshkov
54d17b9532
oleaut32: Accept DISP_E_PARAMNOTFOUND for missing optional parameters in ITypeInfo::Invoke implementation.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-03 10:51:23 +01:00
Zebediah Figura
94f4b49d78
oleaut32: Handle coclasses in ITypeInfo_Invoke().
...
Based on a patch by Sebastian Lackner.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=39799
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-14 17:48:55 +01:00
Sebastian Lackner
ab6d4a9d3d
oleaut32: Pass a HREFTYPE to get_iface_guid.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-14 17:48:55 +01:00
Alexandre Julliard
b73972b9df
oleaut32: Fix argument order with instance and VARIANT return type.
...
Spotted by Dmitry Timoshkov.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-13 20:54:28 +01:00
Zebediah Figura
077b4391d4
oleaut32: Rip out the old typelib marshaller.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Marcus Meissner <marcus@jet.franken.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-12 13:15:27 +01:00
Michael Stefaniuc
a1e0a029b0
oleaut32: Use the ARRAY_SIZE() macro.
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-29 22:01:39 +02:00
Alexandre Julliard
3c562da161
oleaut32: Explicitly define call_double_method() to avoid function mismatch warning.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-15 07:16:06 +02:00
Zebediah Figura
bab41c8aea
oleaut32: Correct some comments.
...
This corresponds to 652ec646ad
affecting widl.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-21 11:16:18 +02:00
Michael Stefaniuc
d0ecd514b4
oleaut32: Use the global HeapAlloc() wrappers.
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-06 19:38:30 +01:00
Huw Davies
dd012af92a
oleaut32: Fix vtable offset for a SYS_WIN32 typelib loaded on WIN64.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-22 10:27:57 +01:00