Commit Graph

874 Commits

Author SHA1 Message Date
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
Zebediah Figura 15e91ac2ce rpcrt4: Handle bare coclasses as top-level parameters.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-19 13:04:41 +01:00
Zebediah Figura f4ee83c0eb rpcrt4: Handle bare interfaces as top-level parameters.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-19 13:04:38 +01:00
Nikolay Sivov bf39f2bf0f oleaut32/tests: Link to activation context API directly.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-21 13:48:44 +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
Jacek Caban 2822b577d8 oleaut32/tests: Add test of reference typelib caching.
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 f7e357aa5f oleaut32/tests: Use Unicode strings for file names.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-10 22:46:24 +01:00
Michael Stefaniuc 45da77a4e4 oleaut32/tests: Get rid of strcmp_wa().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-06 21:47:33 +01:00
Alexandre Julliard 0053ab28e6 oleaut32/tests: Get rid of strcmpW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-26 10:59:43 +01:00
Nikolay Sivov de388bbec9 oleaut32/tests: Remove some workarounds for functions that are assumed to be available.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-08 21:12:05 +01:00
Zebediah Figura c7fa6e8e2d oleaut32/tests: Avoid testing that GDI objects are invalid.
This is not consistent across Windows versions.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-26 21:56:04 +01:00
Jacek Caban 1aaf870039 rpcrt4: Fix implicit in attribute handling in write_param_fs.
Fixes regression caused by typelib marshaling rewrite.
Spotted by Kevin Puetz.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-18 21:13:16 +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 4b49875ec1 oleaut32/tests: Add some more tests for GetRefTypeInfo() in case of dual interface.
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 d9911e3631 oleaut32/tests: Use TYPEKIND values.
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 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
Jacek Caban db77f53507 oleaut32: Fix checks for digit characters.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-12 23:04:35 +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
Zebediah Figura 3fd7a32a01 rpcrt4: Properly handle complex arrays in the typelib marshaller.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-02 09:08:05 +02:00
Zebediah Figura c299f09e25 oleaut32/tests: Test marshalling of complex structs.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-01 21:54:32 +02:00
Michael Stefaniuc 829170f3d6 oleaut32/tests: Remove useless casts to self.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-26 21:41:48 +01:00
Zebediah Figura 968eda4b18 oleaut32: Unify the typelib and dispatch proxy/stub factories.
Both seem to be able to handle either kind of interface on Windows.

f72f8e5c4 was not enough, since the IDispatch proxy/stub factory
delegates to the typelib proxy/stub factory if the IID is not
IDispatch.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-05 21:22:15 +01:00
Alistair Leslie-Hughes 0c738d900a oleaut32: Support VT_DECIMAL in VarRound.
Based on a patch by Carlos Chiriboga Calderon.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=26653
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-19 22:04:50 +01:00
Michael Stefaniuc e36476ff7e oleaut32/tests: Propagate the const instead of casting it away.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-18 16:02:28 +01:00
Michael Stefaniuc 3af4ebf27a oleaut32/tests: Floating point numeric constants are by default doubles.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-13 09:13:18 +01:00
Michael Stefaniuc d506882266 oleaut32/tests: Fix printing of an expected value.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-13 09:12:38 +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
Sven Baars 0794ab8400 oleaut32/tests: Fix some memory leaks (Valgrind).
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-14 15:32:23 +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 2cba0ed944 oleaut32/tests: Add some tests for marshalling of coclasses.
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
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
Dmitry Timoshkov b7dad74f53 oleaut32/tests: Add test for calling function with instance and VARIANT return type.
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-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
Zebediah Figura eff5223ae3 oleaut32/tests: Add a test for marshalling of floats on x86-64.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-02 15:18:01 +01:00
Zebediah Figura 55b1c4301f oleaut32/tests: Add some tests for marshalling public typedefs.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-02 15:18:01 +01:00
Zebediah Figura b6bee08366 oleaut32/tests: Add some more tests for marshalling arrays.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-02 15:18:01 +01:00
Zebediah Figura 09a81b30f8 oleaut32/tests: Add some more tests for marshalling structs.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-01 21:50:58 +01:00
Zebediah Figura 9d1b5fd44f oleaut32/tests: Add some tests for marshalling safe arrays.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-01 21:50:58 +01:00
Zebediah Figura a21a3d367b oleaut32/tests: Add some more tests for marshalling VARIANTs.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-30 10:36:17 +01:00
Zebediah Figura 20749cec4c oleaut32/tests: Add some tests for marshalling BSTRs.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-30 10:36:13 +01:00
Zebediah Figura 09076372eb oleaut32/tests: Add some tests for marshalling interfaces.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-30 10:36:08 +01:00
Zebediah Figura 96b0bdc38c oleaut32: Don't release a NULL interface in VARIANT_UserFree().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-30 10:36:01 +01:00
Zebediah Figura 5c8329d3fd oleaut32/tests: Add some tests for marshalling pointers.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-30 10:35:56 +01:00
Zebediah Figura 71f2839e52 oleaut32/tests: Abort earlier if we fail to create a proxy.
We are not testing anything meaningful in this case.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-30 10:35:53 +01:00
Zebediah Figura 55e3a4d82f oleaut32/tests: Add some tests for marshalling base types.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-16 14:01:39 +02:00
Zebediah Figura 1d15103c2b oleaut32: Handle VT_(U)I8 in get_type_size().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-16 14:01:33 +02:00
André Hentschel 3b2c4d6624 oleaut32/tests: Adjust test to a fixed Windows bug.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-10 12:33:16 +02:00
Dmitry Timoshkov 4b525aa0a4 oleaut32/tests: Fix the IPicture::Render() usage.
When one specifies the target rectangle (0, 0, width, -height)
IPicture::Render() places the origin at 0,0 and flips the image
vertically. This means that in order to paint an icon on the DC
it's necessary to specify the rectangle (0, height, width, -height),
i.e. place the origin at 0,height. I've written a test app that
verifies this behaviour, ufortunately I don't see a way to add
a Wine test case for this.

The test currently works by chance under Windows because in case
of (0, 0, width, -height) IPicture::Render() draws black rectangle
instead of an icon at (0, 0, width, height). If Wine intends to
replicate this behaviour it should be fixed by a separate patch.

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:04 +02:00
Daniel Lehman 1d2ac5d8b6 oleaut32: Extend value range before getting absolute value in VarBstrFromI4.
Signed-off-by: Daniel Lehman <dlehman@esri.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-15 10:49:06 +02:00
Daniel Lehman 7198499dd0 oleaut32/tests: Add test for VarBstrFromI4.
Signed-off-by: Daniel Lehman <dlehman@esri.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-15 10:49:06 +02:00