Commit Graph

2314 Commits

Author SHA1 Message Date
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
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
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
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 4a6f002d9a oleaut32: Add missing return value checks (Coverity).
CID 1442938:  Error handling issues  (CHECKED_RETURN)

Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-04 22:02:05 +01:00
Alistair Leslie-Hughes f784cabd34 oleaut32: Correctly get the Grouping separator.
LOCALE_SGROUPING allows for 10 characters including the null.

Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-25 21:41:20 +01:00
Alistair Leslie-Hughes 1a842d18c9 oleaut32: Correctly get the thousands separator in VarFormatCurrency.
LOCALE_STHOUSAND allows for 4 chracters including the NULL.

Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-25 21:41:12 +01:00
Alistair Leslie-Hughes 29cf8ee8ab oleaut32: Correctly get the Currency separator in VarFormatCurrency.
LOCALE_SCURRENCY allows for 13 chracters including the NULL.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46442
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-25 21:41:08 +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
Alexandre Julliard cc743f8e6c oleaut32: Fix rendering of monochrome icons.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46308
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-20 18:34:39 +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
Alex Henrie 77a8872fc9 oleaut32: Make constant 'szAccept' static.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-30 19:36:51 +01:00
Andrey Gusev ca4bf6c80b oleaut32: Fix a typo in FIXME() message.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-29 15:55:21 +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
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
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
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
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
Alex Henrie 72c2af3868 oleaut32: Add DECLSPEC_HOTPATCH to SysAllocStringByteLen.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45199
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-03 16:22:03 -05:00
Alex Henrie 1e8c62b020 oleaut32: Add DECLSPEC_HOTPATCH to functions patched by MS Word 2010.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45199
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-18 20:59:38 +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
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
Dmitry Timoshkov 3dcd048175 oleaut32: Use common helper for masked bitmaps to render an icon.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:04 +02:00
Dmitry Timoshkov 293a679076 oleaut32: Move rendering a bitmap to a separate helper.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:04 +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