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
Dmitry Timoshkov
bab5a703da
oleaut32/tests: Add tests for IPicture::get_hPal() and IPicture::set_hPal().
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-09 18:04:17 +02:00
Michael Stefaniuc
2441e9417c
oleaut32/tests: Use a better type to avoid a cast.
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-19 20:49:24 +02:00
Michael Stefaniuc
db48640a51
oleaut32/tests: Avoid an ARRAY_SIZE-like macro.
...
Also use a better type for the dimension variable.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-19 20:49:11 +02:00
Michael Stefaniuc
050edeb420
oleaut32/tests: Use the available ARRAY_SIZE() macro.
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-19 20:49:04 +02:00
Zebediah Figura
50a7b239bd
widl: Generate correct size and alignment for all types.
...
Using type_memsize_and_alignment() directly instead of reimplementing it.
Also fix the generated tests in oleaut32 to reflect correct sizes for 64-bit
typelibs.
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-05 10:07:10 +02:00
Zebediah Figura
8c968f774c
widl: Don't remove the FDUAL flag from non-dispatchable interfaces.
...
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-05-29 17:13:05 +02:00
Zebediah Figura
413821f8b1
widl: Properly implement syntax 2 dispinterfaces.
...
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-05-29 17:13:05 +02:00
Alex Henrie
96e9da5c87
oleaut32/tests: Mark some tmarshal tests as todo on x64 and ARM.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-15 19:35:13 +01:00
Daniel Lehman
ff4a02fe3c
oleaut32/tests: Fix leak (Valgrind).
...
Signed-off-by: Daniel Lehman <dlehman25@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-06 22:11:14 +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
Huw Davies
138f75f19f
oleaut32/tests: Remove some no longer needed test work-arounds.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-22 10:27:55 +01:00
Nikolay Sivov
4cc41fc5ce
oleaut32/tests: Use SafeArraySetIID() directly.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-19 16:40:55 +01:00
Nikolay Sivov
0fc0e34fb0
oleaut32/tests: Test more return values.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-05 16:13:37 +01:00
Marcus Meissner
4f45fa0581
oleaut32/tests: Fixed 64-bit crash on tmarshal test.
...
Signed-off-by: Marcus Meissner <marcus@jet.franken.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-08 21:42:17 +01:00
Piotr Caban
409bafcc73
oleaut32: Ignore underflows in VarR8FromStr.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-07 21:24:45 +01:00
Piotr Caban
61c18632b8
oleaut32: Fix automatic value getting in ITypeInfo::Invoke.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-07 21:24:45 +01:00
Donna Whisnant
c4ac2d285d
oleaut32: Fix DispCallFunc() stdcall test to be ABI not x64 specific.
...
The tests checking callee stack cleaning for stdcall vs. cdecl should
be a function of the calling ABI of the platform, not whether it is
64-bit or not. This fixes the check for platforms like ARM that may
be 32-bit but that do not use the stdcall convention of callee stack
cleaning.
Signed-off-by: Donna Whisnant <dewhisna@dewtronics.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-06 12:15:28 +01:00
Alistair Leslie-Hughes
884c6ddd51
oleaut32/tests: Add VarDateFromStr test.
...
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-04 10:44:35 +02:00
Alistair Leslie-Hughes
538e46adea
oleaut32: Improve support for IDispatch in VarCat.
...
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-14 21:22:50 +02:00
Nikolay Sivov
19b944d49c
oleaut32/tests: Basic test for invalid arguments in LoadTypeLib/LoadTypeLibEx.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-07 11:24:48 +02:00
Jacek Caban
e42a12d8b8
oleaut32/tests: Use static oleaut32 linking in vartest.c.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-30 21:49:50 +02:00