Francois Gouget
5fd5618e3d
ole32: Rename entry_updatable() to its more common spelling.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-05 16:12:13 +01:00
Huw Davies
33be9fc78f
ole32: Correctly save the remaining formats if their data has not been set.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-14 17:23:45 +01:00
Sergio Gómez Del Real
179daf67a8
ole32: Correctly save the dib format if its data has not been set.
...
Signed-off-by: Sergio Gómez Del Real <sdelreal@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-14 17:23:37 +01:00
Huw Davies
2a4bbb8864
ole32: Don't clear the dirty flag when saving to another storage.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-08 16:45:57 +01:00
Huw Davies
a343607909
ole32: Remove unused variable.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-08 16:45:57 +01:00
Huw Davies
718fb9deb3
ole32: Properly align HMETAFILEPICT marshal data.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-08 16:45:57 +01:00
Huw Davies
7c166d67b8
ole32: Properly align HENHMETAFILE marshal data.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-08 16:45:57 +01:00
Huw Davies
eb810fbb56
ole32: Properly align HANDLE marshal data.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-08 16:45:57 +01:00
Huw Davies
8c6b8bf4e8
ole32: Properly align CLIPFORMAT marshal data.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-08 16:45:57 +01:00
Zebediah Figura
d9c9791b50
ole32: Add user marshalling for TYMED_GDI.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-08 16:45:57 +01:00
Zebediah Figura
4c87040f2a
ole32: Add local user marshalling for bitmaps.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-08 16:45:56 +01:00
Zebediah Figura
2812086ebf
ole32: Add in-process user marshalling for bitmaps.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-08 16:45:56 +01:00
Sergio Gómez Del Real
a3c162da5b
ole32/tests: Add tests for enhmetafile and CONTENTS stream saving.
...
Signed-off-by: Sergio Gómez Del Real <sdelreal@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-08 16:45:56 +01:00
Sergio Gómez Del Real
edc2b347f2
ole32: Add support for saving enhmetafiles to CONTENTS and Presentation streams.
...
Signed-off-by: Sergio Gómez Del Real <sdelreal@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-08 16:45:56 +01:00
Sergio Gómez Del Real
8dd207a219
ole32: Add support for saving metafiles to CONTENTS streams.
...
Signed-off-by: Sergio Gómez Del Real <sdelreal@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-08 16:45:56 +01:00
Sergio Gómez Del Real
65b3d01fae
ole32: Add support for saving DIBs to CONTENTS streams.
...
Signed-off-by: Sergio Gómez Del Real <sdelreal@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-08 16:45:56 +01:00
Sergio Gómez Del Real
07af05fa80
ole32: Refactor OLE's data cache Save implementation.
...
Signed-off-by: Sergio Gómez Del Real <sdelreal@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-08 16:45:56 +01:00
Huw Davies
667ce5a29e
ole32/tests: Show that the storage's CLSID is not modified when saving.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-29 20:15:31 +01:00
Huw Davies
251e6edae5
ole32: Make the synthesize helpers return a STGMEDIUM.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-29 20:15:31 +01:00
Sergio Gómez Del Real
51c8fa6574
ole32: Add DIB saving in data cache, and relevant tests.
...
Signed-off-by: Sergio Gómez Del Real <sdelreal@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-28 20:39:29 +01:00
Sergio Gómez Del Real
0f0e2173e7
ole32/tests: Add some tests for testing metafiles.
...
Signed-off-by: Sergio Gómez Del Real <sdelreal@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-28 20:32:59 +01:00
Huw Davies
32766b5253
ole32: Rename structure member to target device size.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-22 10:25:51 +01:00
Huw Davies
ddd1882396
ole32/tests: Use a separate data source for the file dib to avoid confusion.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-21 21:47:42 +01:00
Huw Davies
fef5871e28
ole32: Correctly track the number of inits when auto-joining the MTA.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-10 16:41:28 +01:00
Marcus Meissner
d382b8e91a
ole32: Clipboard format in the datacache is with trailing \0.
...
GetClipboardFormatName returns length without terminating 0,
but we need to store it with \0.
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>
2017-11-06 19:36:41 +01:00
Huw Davies
525a7ab1df
ole32: Implement IOleCache_InitCache().
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-31 17:00:49 +01:00
Huw Davies
ca2607db32
ole32: Implement IOleCache2_UpdateCache().
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-31 17:00:49 +01:00
Huw Davies
9cf2bd9d91
ole32: There's no need to store a separate clip format for the data.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-31 17:00:49 +01:00
Huw Davies
c3fe4b87d6
ole32: TYMED_NULL is not valid.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-31 17:00:49 +01:00
Huw Davies
12718fe021
ole32: A presentation cache for DVASPECT_ICON must have format CF_METAFILEPICT.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-31 17:00:49 +01:00
Huw Davies
8d0a53e60d
ole32: Adding a view cache for DVASPECT_ICON produces a CF_METAFILEPICT cache entry.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-31 17:00:49 +01:00
Dmitry Timoshkov
f7eabdf3a8
ole32: Remove an optimization from DataCache_Save() that copies whole original storage.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-20 18:59:35 +02:00
Dmitry Timoshkov
19385780ca
ole32/tests: Add a test for IOleCache storage contents created by IPersistStorage_Save().
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-20 18:59:35 +02:00
Dmitry Timoshkov
970c5b1dd2
ole32/tests: Add a test for saving an IOleCache storage.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-20 18:59:35 +02:00
Alexandre Julliard
0a199813d9
ole32: Specify cursor hotspots separately for each size.
...
This is supported in icoutils as of version 0.32.0.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-17 16:21:47 +02:00
Fabian Maurer
0736e4e302
ole32: Don't redefine htole32/htole16.
...
On some systems these macros are already defined
in usr/include/endian.h
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-10 19:53:15 +02:00
Huw Davies
87ccecbfa2
ole32: In the non-aggregated case a request for IUnknown actually returns IOleCache2.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-05 19:33:09 +02:00
Alistair Leslie-Hughes
fcc261adfd
ole32: Add pointer check.
...
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-28 00:37:16 +02:00
Dmitry Timoshkov
ae7571a5bb
ole32: Trace clsid in IStorage::SetClass.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-20 16:22:33 +02:00
Dmitry Timoshkov
7ce77b464c
ole32: Add a trace to IDataObject::GetData.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-20 16:22:29 +02:00
Zebediah Figura
a56bc8f93b
ole32: Store proxy/stub CLSIDs per process, not per apartment.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-08 20:02:14 +09:00
Alexandre Julliard
3b4492765a
ole32: New high resolution cursors generated from SVG.
...
Based on a cursor set published by Ludvig Hummel under the X11 license.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-14 13:30:21 +02:00
Alex Henrie
5a3b87a0fd
ole32: Avoid null pointer dereferences in CoGetTreatAsClass.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-06 18:50:59 +02:00
Zhenbo Li
13c6d37766
ole32: Add stub for OleGetIconOfFile.
...
Signed-off-by: Zhenbo Li <litimetal@gmail.com>
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-21 10:04:13 +02:00
Huw Davies
292f8266b9
ole32/tests: Add tests for InitNew().
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-06 13:47:14 +02:00
Huw Davies
33a720b7d7
ole32: InitNew() should fail if there is a current storage.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-06 13:47:14 +02:00
Huw Davies
51cca0b118
ole32/tests: Add tests for automatic cache entry creation.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-06 13:47:14 +02:00
Huw Davies
966e8a2c24
ole32: Create initial cache entries for the CLSID_Picture_ classes.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-06 13:47:14 +02:00
Huw Davies
111b72fc85
ole32: Add the ability to create an entry without returning it.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-06 13:47:14 +02:00
Huw Davies
705ccd7488
ole32: Start allocating regular cache entries with id of 2.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-06 13:47:13 +02:00
Huw Davies
026756482a
ole32: Fix incorrectly assigned member in the presentation stream.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-06 13:47:13 +02:00
Francois Gouget
85a130958c
ole32: Make bitmap_info_size() static.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-06 13:08:46 +02:00
Huw Davies
2e363267eb
ole32: Synthesize dibs or bitmaps as appropriate.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-23 16:29:46 +02:00
Huw Davies
e27708f2fd
ole32: Create CF_DIB and CF_BITMAP entries when either is cached.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-23 16:29:33 +02:00
Huw Davies
20a8f1adf4
ole32: Implement IOleCache_EnumCache().
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-23 16:29:12 +02:00
Huw Davies
f9b0f60ae3
ole32: Check the cache entry's stgmedium for the unloaded state.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-23 16:29:09 +02:00
Huw Davies
8fc1a4cd86
ole32: OleUninitialize() does not release the reference to the clipboard's source dataobject.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-23 16:28:04 +02:00
Huw Davies
1d2860e54c
ole32: Fix up the dib's resolution on loading.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-18 13:37:46 +02:00
Huw Davies
e7bb4ba269
ole32: Don't cache the BITMAPFILEHEADER.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-18 13:37:38 +02:00
Huw Davies
fc49d98f6a
ole32: Set the advise flags in CreateEntry().
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-18 13:37:22 +02:00
Huw Davies
77d1eba7fa
ole32: Use the helper function to copy the clipboard's FORMATETC.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-18 13:37:18 +02:00
Huw Davies
9ee30d7915
ole32: Use the helper function to copy the datacache's FORMATETC.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-18 13:37:14 +02:00
Huw Davies
11db49190b
ole32: Add a helper to copy FORMATETC structures.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-18 13:37:07 +02:00
Nikolay Sivov
3237c5ed84
ole32/tests: Test pointer returned by ProgIDFromCLSID() on failure.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-10 21:51:39 +02:00
Alistair Leslie-Hughes
b399bafa12
ole32: Add CoRegisterSurrogate/Ex stubs.
...
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-28 10:26:46 +02:00
Alistair Leslie-Hughes
3ca00ff857
ole32/tests: Stop crash on XP.
...
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-14 14:19:10 +01:00
Thomas Faber
87dba2bbd0
ole32: Zero STGMEDIUM before calling IDataObject::GetData.
...
Signed-off-by: Thomas Faber <thomas.faber@reactos.org>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-28 15:33:18 +01:00
Jacek Caban
c7e6fe6cdf
ole32: Added GlobalOptions object stub implementation.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-23 13:15:45 +01:00
Jacek Caban
fd09c37b49
ole32: Use generic class factory for StdComponentCategoriesMgr object.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-21 14:15:26 +01:00
Jacek Caban
076c78220d
ole32: Use generic class factory for pointer moniker.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-21 14:15:24 +01:00
Jacek Caban
961c3dc454
ole32: Use generic class factory for class moniker.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-21 14:15:22 +01:00
Jacek Caban
947c9ba2ca
ole32: Use generic class factory for composite moniker.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-21 14:15:20 +01:00
Jacek Caban
b05fd4689e
ole32: Use generic class factory for anti moniker.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-21 14:15:18 +01:00
Jacek Caban
dee64631ff
ole32: Use generic class factory for item moniker.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-21 14:15:16 +01:00
Jacek Caban
cf7883f396
ole32: Added generic class factory implementation and use it for file moniker.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-21 14:15:14 +01:00
Francois Gouget
93a8ede0e8
ole32: Add a __WINE_ALLOC_SIZE attribute to heap_alloc().
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-09 11:23:22 +01:00
Sebastian Lackner
182fad8b3a
ole32: Call GetClipboardFormatName with the correct parameters.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-03 19:05:08 +01:00
Alexandre Julliard
e31dd0f384
ole32: Use a HWND_MESSAGE window for the clipboard.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-02 20:40:14 +01:00
Alexandre Julliard
c85eaae44c
ole32: Only trace a clipboard format name if it has one.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-02 20:40:14 +01:00
Alexandre Julliard
77e566a3cb
ole32: Don't set zero-size clipboard data, this no longer works.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-02 20:40:13 +01:00
Alexandre Julliard
526b19551b
ole32/tests: Add a test for WM_DRAWCLIPBOARD during OleSetClipboard.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-02 12:14:49 +01:00
Nikolay Sivov
3e2ed9c761
ole32/tests: Some tests for returned apartment type in implicit MTA case.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-26 18:53:11 +01:00
Hadrien Boizard
5a9f7ef06d
ole32: Use debugstr_guid() in TRACES.
...
Signed-off-by: Hadrien Boizard <h.boizard@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-19 23:16:24 +09:00
Alexandre Julliard
8865f4a4ec
user32: Synthesize text clipboard formats on the user32 side.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-07 00:34:24 +09:00
Huw Davies
edaf60d71a
ole32/tests: Update tests to the new channel hook info structure.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-02 23:34:26 +09:00
Huw Davies
1ed2a613a7
ole32: Mask out the flag bit.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-02 23:34:26 +09:00
Alexandre Julliard
27a73216c0
ole32: Cope with receiving WM_RENDERALLFORMATS even when the clipboard is empty.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-01 22:02:04 +09:00
Alexandre Julliard
8df5add2d7
rpcss: Make rpcss a proper service.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-31 22:22:59 +09:00
Alexandre Julliard
295061a280
ole32/tests: Make the clipboard test more strict and remove Win9x compatibility cruft.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-17 14:26:59 +09:00
Michael Stefaniuc
11c67756d2
ole32/tests: Avoid casts from COM objects to ifaces.
...
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-11 20:18:01 +09:00
Nikolay Sivov
4d0a353bcc
ole32/tests: Fix indentation warning on GCC 6.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-10 22:22:37 +09:00
Michael Stefaniuc
b6a505f9a5
ole32/tests: Use todo_wine_if().
...
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-10 12:54:20 +09:00
Andrey Gusev
3db78a2bb7
ole32: Use debugstr_guid() in TRACE() messages.
...
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-22 21:34:43 +09:00
Michael Stefaniuc
66f13236fe
ole32: Remove a redundant NULL check before CoTaskMemFree().
...
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-08 20:17:41 +09:00
Michael Stefaniuc
d17e760cb3
ole32: Standardize COM aggregation for the DataCache.
...
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-06 16:19:43 +09:00
Michael Stefaniuc
08e571cf95
ole32: Avoid casts from the IMultiQI iface to the COM object.
...
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-06 16:19:23 +09:00
Michael Stefaniuc
a60b189787
ole32: Standardize COM aggregation for the FreeThreadedMarshaler.
...
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-05 23:22:04 +09:00
Michael Stefaniuc
123dd73591
ole32: Use the proper COM method wrapper.
...
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-03 10:20:28 +09:00
Marcus Meissner
113b290dba
ole32: Allocate more for FmtIdToPropStgName (Coverity).
...
Signed-off-by: Marcus Meissner <marcus@jet.franken.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-20 20:06:39 +09:00
Francois Gouget
e0a9e5ae26
ole32: Spelling fixes.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-31 22:42:00 +09:00
Nikolay Sivov
4e5698f72e
ole32: Don't try to read key value if key was not found (Valgrind).
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-30 11:15:16 +09:00
Andrey Gusev
e6199d6640
ole32: Fix a typo in comment.
...
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-17 21:02:20 +09:00
Alex Henrie
776eebe80b
ole32: Fix memory leak in FileMonikerImpl_ComposeWith.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-05 01:27:52 +09:00
Francois Gouget
1ec8fa53db
ole32: Fix a typo in a TRACE() message.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-26 21:37:36 +09:00
Francois Gouget
147d8231e4
ole32/tests: Fix spelling errors in a couple of comments.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-25 18:48:17 +09:00
Alexandre Julliard
4f2db2ae0c
ole32: Fix a couple of reference leaks.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-21 18:26:52 +09:00
Alex Henrie
b045d72631
ole32: Implement StgOpenPropStg.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-21 18:26:52 +09:00
Alex Henrie
004e9f94e1
ole32: Implement StgCreatePropStg.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-21 18:26:52 +09:00
Alex Henrie
6e012b52cd
ole32/tests: Add tests for StgCreatePropStg and StgOpenPropStg.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-21 18:26:52 +09:00
Alex Henrie
dddfd46934
ole32: Fix memory leaks in CompositeMonikerImpl_Construct.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-18 15:20:04 +09:00
Francois Gouget
f384ba52cd
ole32: Rightmost spelling fix.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-15 21:57:47 +09:00
Francois Gouget
a648b87bff
ole32/tests: Fix spelling of a test function name.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-14 13:16:02 +09:00
Francois Gouget
842bb8cb58
ole32/tests: Fix spelling of a few variable names.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-13 23:01:12 +09:00
Alex Henrie
0bac055b56
ole32: Fix sizeof mismatch in CompositeMonikerImpl_Construct.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Marcus Meissner <marcus@jet.franken.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-30 21:35:26 +09:00
Nikolay Sivov
fde61d467a
ole32: Fix CreataDataCache() return value when requested riid is not IUnknown, for aggregation case.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-22 22:23:31 +09:00
Nikolay Sivov
7863247ec6
ole32: Make CoGetInstanceFromFile() propagate failure codes to returned MULTI_QI data (Coverity).
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-22 22:23:31 +09:00
Nikolay Sivov
254e76fc15
ole32/tests: Some tests for IInitializeSpy.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-16 12:13:29 +09:00
Nikolay Sivov
cf218bca42
ole32: Fix refcounting of IObjContext per-thread instance.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-15 17:45:45 +09:00
Nikolay Sivov
6fd208b41c
ole32: Use CoGetApartmentType() to implement IComThreadingInfo.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-14 19:15:10 +09:00
Nikolay Sivov
5b7c9ecd09
ole32: Implement IComThreadingInfo::GetCurrentLogicalThreadId().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-11 20:22:27 +09:00
Nikolay Sivov
1105acd26a
ole32: Implement CoGetCurrentLogicalThreadId().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-11 20:22:24 +09:00
Nikolay Sivov
a411ef99fc
ole32/tests: A test to show data cache QI problems.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-11 20:22:08 +09:00
Nikolay Sivov
22ef1c7e2a
ole32/tests: Fixed CoGetPSClsid() test failures when running on limited account.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-07 13:20:34 +09:00
Nikolay Sivov
2a1e856bd9
ole32/tests: Don't trace last error when error code is returned directly.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-07 13:20:32 +09:00
Nikolay Sivov
485a412b18
ole32/tests: Fix tests failing on limited account.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-07 13:20:30 +09:00
Nikolay Sivov
7c0b1b6268
ole32: Hold a lock when checking is spy is already registered.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-04 18:43:04 +09:00
Nikolay Sivov
cef4c7dc69
ole32: Improve CoRegisterMallocSpy/CoRevokeMallocSpy state and parameter validation.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-04 18:43:04 +09:00
Nikolay Sivov
110665a3d8
ole32: Don't call spy on IMalloc::Free(NULL).
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-04 18:43:04 +09:00
Michael Müller
381ce2956b
ole32: Implement semi-stub for CoGetApartmentType.
...
Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-03 12:59:02 +09:00
Thomas Faber
b743127c3c
ole32: Do not open registry keys with no access rights.
...
Signed-off-by: Thomas Faber <thomas.faber@reactos.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-01 18:49:46 +09:00
Huw Davies
d468ed1e99
ole32/tests: Add more drag and drop tests.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-23 20:22:23 +09:00
Huw Davies
b262dad099
ole32/tests: Move tests to a table driven mechanism.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-23 20:22:23 +09:00
Huw Davies
9194c47ede
ole32: Don't send DragOver if we're about to drop or cancel.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-23 20:22:23 +09:00
Huw Davies
b8fcc4a20a
ole32: Move end-of-drag handling to a separate function.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-23 20:22:23 +09:00
Huw Davies
82b140f7b1
ole32: Move DragEnter handling to a separate function.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-23 20:22:23 +09:00
Huw Davies
9f6fd0e484
ole32: Release IDropTarget when the mouse leaves.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-23 20:22:23 +09:00
Huw Davies
f2530ca18f
ole32: Move the GiveFeedback handling to a separate function.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-23 20:22:23 +09:00
Huw Davies
bf8e8f56f5
ole32: Remove curDragTargetHWND since it's never used.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-23 20:22:22 +09:00
Frédéric Delanoy
6936bbb198
ole32/tests: Use todo_wine_if() in tests.
...
Signed-off-by: Frédéric Delanoy <frederic.delanoy@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-22 17:37:09 +09:00
Huw Davies
bf5dca1976
ole32: The type of the size of IMalloc'ed blocks is SIZE_T.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-20 01:50:47 +09:00
Paul Gofman
d3b42a13d2
ole32/tests: OleGetClipboard should succeed when COM/OLE is not inited.
...
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-15 23:52:35 +09:00
Paul Gofman
5d4b23e6e7
ole32: Zero output interface pointer in OleGetClipboard() on error.
...
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-15 23:52:20 +09:00
Paul Gofman
b4b0c138fe
ole32: Fix behaviour of OLE init/uninit.
...
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-15 23:51:02 +09:00
Nikolay Sivov
0a34f25487
ole32/tests: A couple of tests for ReadClassStm/ReadClassStg.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-06 18:08:32 +01:00
Nikolay Sivov
8fe18a16f7
ole32: Properly implement OleRegGetUserType().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-05 17:52:49 +01:00
Alexandre Julliard
3c84cc1807
ole32: Remove a no longer used constant.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-29 17:51:59 +01:00
Piotr Caban
d90ec79be2
ole32: Make clipboard latest_snapshot access thread safe.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-29 17:18:15 +01:00
Nikolay Sivov
d66af9c185
ole32/tests: Simple test for aggregation in CreateDataCache().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-24 13:44:50 +01:00
Nikolay Sivov
88111ca2c0
ole32/tests: Remove some casts we don't need, fix a couple of others.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-24 13:44:40 +01:00
Nikolay Sivov
b19ad3af80
ole32: Use OleRun() in OleCreate() instead of unrolling what it does.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-24 13:44:31 +01:00
Nikolay Sivov
73008a6c04
ole32: Ignore GetMiscStatus() returned value in OleCreate().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-24 13:44:25 +01:00
Nikolay Sivov
7ad896d541
ole32/tests: Some tests for OleRegGetUserType().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-24 13:44:03 +01:00
Nikolay Sivov
98505b4076
ole32: Simplify OleRegGetUserType() using existing helper.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-23 16:35:40 +01:00
Nikolay Sivov
1219abfd8c
ole32: Simplify OleRegGetMiscStatus() using existing helper, use read-only key permissions.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-23 16:35:31 +01:00
Nikolay Sivov
12d73316e4
ole32: Fix parameter validation for CoGetMalloc().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-23 16:35:19 +01:00
Piotr Caban
d7e302b52b
ole32: Fix apartment window class name.
...
TestStand 2010 makes class name comparison when pumping RPC messages.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-21 19:50:27 +01:00
Piotr Caban
726698ab81
ole32: Fix minimal size check of compound file in StgOpenStorage.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-10 22:44:43 +09:00
Nikolay Sivov
f797f63d24
ole32/tests: Some tests for CoGetMalloc().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-04 21:56:18 +09:00
Andrey Gusev
8bfc9bd2ee
Assorted typos fixes.
...
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-27 15:38:30 +09:00
Jacek Caban
a1cc980bcb
ole32: Use absolute key path in create_classes_root_hkey.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-18 00:29:45 +09:00
Jacek Caban
80c53b33fd
ole32: Added DECLSPEC_HOTPATCHABLE to a few more functions.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-13 11:52:58 +09:00
Dmitry Timoshkov
2d08613e87
ole32: Add more traces to the storage methods.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-04 14:41:38 +09:00
Dmitry Timoshkov
39d2ce5956
ole32: Relax media type check when loading CF_METAFILEPICT format from OLE storage.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-03 22:14:04 +09:00
Dmitry Timoshkov
b8800c237b
ole32/tests: Add some tests for loading and drawing various OLE formats.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-03 22:02:20 +09:00
Jacek Caban
e4bc220802
ole32: Make CoInitializeEx hot patchable.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-03 00:33:27 +09:00
Dmitry Timoshkov
263b06ef8d
ole32/tests: Add the tests to show that IEnumSTATSTG::Next should zero out returned stats when it reaches end of enumeration.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-02 23:02:24 +09:00
Dmitry Timoshkov
9f2bd8503d
ole32: Zero out returned stats when IEnumSTATSTG::Next reaches end of enumeration.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-02 23:02:24 +09:00
Dmitry Timoshkov
7bc1005f56
ole32: Handle failure of reading directory entry in IEnumSTATSTG::Next.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-02 23:02:24 +09:00
Dmitry Timoshkov
421b3ca3eb
ole32: Fallback to parsing the Presentation streams ff parsing of the "CONTENTS" stream fails.
...
I have an application that tries to load an existing object from the file
using OleLoad() and fails because the "CONTENTS" stream has clsid set to
"Microsoft Photo Editor 3.0 Picture". I've dumped the contents of the OLE
storage to disk for investigation, and under Windows (where Microsoft Photo
Editor is not installed, and registry has no traces of its class guids)
OleLoad() is able to load objects from this storage, and after that OleDraw()
successfully paints the object contents on the screen. I've written an
application to play with the dumped storage, and under Windows the "CONTENTS"
stream also can't be loaded, but the storage also contains the "OlePres000"
stream which contains an object in CF_METAFILEPICT format, and this one can be
loaded and painted.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-29 21:20:07 +09:00
Huw Davies
28b916b26e
ole32: Fix ref counting in GetDataHere Proxy.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-28 00:58:15 +09:00
Huw Davies
ced5800b99
ole32: Correctly release an existing pointer when unmarshalling a NULL-ptr.
...
However, this should not be done in the case of pUnkForRelease.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-28 00:58:15 +09:00
Huw Davies
9021b96772
ole32/tests: Release the marshalled data in the expected buffers.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-28 00:58:14 +09:00
Huw Davies
6aa797e669
ole32: WdtpInterfacePointer_UserUnmarshal() should release an interface if one is passed in.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-28 00:58:14 +09:00
Dmitry Timoshkov
1b580e70e9
ole32: Print a FIXME when the "CONTENTS" stream refers to unsupported format.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-23 19:20:25 +09:00
Jacek Caban
c5b54b34e9
ole32: Call CoCreateInstanceEx from CoCreateInstance instead of the other way around.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-22 16:47:19 +09:00
Jacek Caban
dedcd30cb8
ole32: Pass requested interface IID to CreateInstance in CoCreateInstanceEx.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-22 16:47:15 +09:00
Huw Davies
cc1b2879e4
ole32: Set the release interface to NULL before calls to GetDataHere.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-21 21:57:22 +09:00
Dmitry Timoshkov
b9d8c2b1ea
ole32: Initialize number of bytes read before the comparison.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-21 19:19:08 +09:00
Nikolay Sivov
4afda020ae
ole32/tests: Use BOOL variables for BOOL return type (PVS-Studio).
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-21 00:25:34 +09:00
Dmitry Timoshkov
f9bc636d35
ole32: PropVariantCopy should return DISP_E_BADVARTYPE in case of bad source variant type.
...
In some rare (notably for some VT_VECTOR) cases Windows implementation
returns STG_E_INVALIDPARAMETER, but returning DISP_E_BADVARTYPE should
cover most of cases.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-21 00:25:33 +09:00
Huw Davies
5ae2b5ae93
ole32: Release interfaces as part of Stop.
...
This can now be done as Stop will no longer be called from within an object call.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-15 00:53:19 +09:00
Huw Davies
719c479a36
ole32: Defer calling Stop in an OnClose notification during an object call.
...
The OnClose notification may arrive during a call to the object. Releasing the
object's interfaces at this point would be bad, so delay this until after the
object call returns.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-15 00:53:19 +09:00
Huw Davies
79598c4803
ole32: Call the cache's OnRun and OnStop methods.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-15 00:53:18 +09:00
Huw Davies
e4ec89f2b0
ole32: Return OLE_E_NOTRUNNING on a cache-miss when the object isn't running.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-15 00:53:18 +09:00
Huw Davies
4fcc5fec57
ole32: Always use object_is_running to check whether the object is running.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-14 20:36:55 +09:00
Huw Davies
a56a0eb063
ole32: Rewrite _Run() to return early on failure.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-14 20:36:43 +09:00
Huw Davies
afbb4afc6c
ole32: Silence an incorrect fixme.
...
The remote unknown object should not implement IExternalConnection.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-14 12:43:28 +09:00
Huw Davies
1dcf3f8e0a
ole32/tests: Test calling CoDisconnectObject from within a COM call to the object.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-14 12:43:21 +09:00
Huw Davies
327100fef9
ole32: Don't block inside CoDisconnectObject.
...
This may be called inside a COM call to the object.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-14 12:43:17 +09:00
Huw Davies
35571a7254
ole32: Hold a reference to the stub manager throughout an incoming call.
...
This will enable us to defer deleting the manager until the call has finished.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-14 12:43:13 +09:00
Huw Davies
09cd89c0cc
ole32: Implement OleCreateFromFileEx.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-09 19:17:08 +09:00
Huw Davies
94ee4096ec
ole32: Add a stub for OleCreateFromFileEx.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-09 19:17:02 +09:00
Huw Davies
d340f09a33
ole32: Don't try to load a handler - the real server is needed.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-09 19:16:51 +09:00
Huw Davies
577644f3c1
ole32: Test the result of IRunningObjectTable_GetObject against S_OK.
...
Typically it would return MK_E_UNAVAILABLE and not S_FALSE if the moniker
is not registered.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-09 19:16:43 +09:00
Jacek Caban
38a9a232f7
ole32: Use get_stub_manager_from_object in CoDisconnectObject.
2015-09-04 19:29:29 +09:00
Jacek Caban
cb183688bb
ole32: Catch crashes in stub object destructors when destroying stub manager.
2015-09-02 22:45:17 +09:00
Jacek Caban
c784e34693
ole32: Quote executable name in CreateProcess call.
...
Fixes tests on VMs that have spaces in executable path.
2015-09-02 22:45:05 +09:00
Jacek Caban
0a92038b38
ole32: Added tests for IPSFactoryBuffer::CreateStub calls.
2015-08-29 14:28:23 +09:00
Jacek Caban
9bdb97e694
ole32: Use proper interface pointer in CreateStub call.
2015-08-29 14:28:23 +09:00
Jacek Caban
e5edbc6fa0
ole32: Use proper IUnknown implementation when finding and creating stub manager.
2015-08-29 14:28:22 +09:00
Jacek Caban
60451f9855
ole32: Create interface stub only if it's not already created.
2015-08-29 14:28:22 +09:00
Francois Gouget
25870c1fba
ole32: A cosmetic fix for the CoMarshalInterface() trace.
2015-08-29 14:27:39 +09:00
Andrey Gusev
5cdcd4493f
Assorted spelling and typos fixes.
2015-08-18 15:00:13 +09:00
Francois Gouget
f8a7d6ed74
Assorted spelling fixes.
2015-08-07 23:50:48 +09:00
Vincent Povirk
9d517a1727
ole32: Ignore high part of size in storage version 3 files.
2015-08-06 21:42:46 +09:00
Hans Leidekker
4062db444c
ole32: Add stub implementations of CoGetActivationState and CoGetCallState.
2015-08-03 12:11:10 +02:00
Piotr Caban
9fd75e8650
ole32/tests: Fix new failures in CoWaitForMultipleHandles tests.
2015-07-31 12:07:41 +02:00
Piotr Caban
fbf7046ae8
ole32: Don't pump all messages in CoWaitForMultipleHandles in threads without apartment window.
2015-07-30 23:50:43 +02:00
Dmitry Timoshkov
76f9d93344
ole32: Fix a memory leak.
2015-07-13 22:08:38 +09:00
Damjan Jovanovic
372b0e1e80
ole32: Convey the Alt button state to the drop target.
2015-07-07 16:52:21 +09:00
Vincent Povirk
9cf835a947
ole32: Use grfLocksSupported to decide when LockRegion is implemented.
2015-07-07 16:52:21 +09:00
Vincent Povirk
8ff3783586
ole32: Add a storage test using a custom ILockBytes.
2015-07-07 16:52:21 +09:00
Dmitry Timoshkov
1f17334fc2
ole32: Accept STG_E_UNIMPLEMENTEDFUNCTION when ILockBytes implementation doesn't support locking.
...
Some custom implementations return it instead of STG_E_INVALIDFUNCTION.
2015-07-06 16:34:47 +09:00
Nikolay Sivov
64456de761
ole32: Handle EnumElements() failure (Coverity).
2015-06-29 18:51:02 +09:00
Nikolay Sivov
1e97a2db17
ole32/tests: Fix source buffer leak (Valgrind).
2015-06-22 15:31:54 +09:00
Nikolay Sivov
4cef7ad841
ole32: Fix a typo in argument name.
2015-06-17 18:19:55 +09:00
Nikolay Sivov
61368e76e4
ole32: Marshal HBRUSH as remotable handle.
2015-06-16 16:50:35 +09:00
Nikolay Sivov
6d53f071c6
ole32: Marshal HICON as remotable handle.
2015-06-15 22:10:31 +09:00
Nikolay Sivov
815197f28c
ole32: Marshal HDC as remotable handle.
2015-06-15 22:10:31 +09:00
Vincent Povirk
3f83b788d4
ole32: Fix storage locking for read-only exclusive mode.
2015-06-12 21:22:42 +09:00
Nikolay Sivov
ff6201c61f
ole32/tests: Test if user memory routines are called, remove some useless traces.
2015-06-05 18:38:21 +09:00
Nikolay Sivov
bfa23b637e
ole32: Fix length of buffer allocated by SNB_UserUnmarshal() (Valgrind).
2015-06-04 15:55:53 +09:00
Nikolay Sivov
7c5f639cb8
ole32: Initialize returned value for disconnected case too in proxy_manager_get_remunknown() (Coverity).
2015-06-01 14:52:56 +09:00
Nikolay Sivov
5c0e48e8ca
ole32: Avoid potential null pointer access (Coverity).
2015-06-01 14:52:52 +09:00
Nikolay Sivov
10c878a451
ole32: Implemented some proxy/stubs methods.
2015-06-01 14:43:02 +09:00
Sebastian Lackner
fdd83248b6
ole32/tests: Add additional tests for CoWaitForMultipleHandles and WM_QUIT.
2015-05-22 14:09:19 +09:00
Nikolay Sivov
aa3a234803
ole32: Implement SNB marshalling.
2015-05-15 21:58:06 +09:00
Francois Gouget
5f35f1a8db
ole32/tests: Silence some clipboard traces that generate too many lines.
2015-05-12 22:32:34 +09:00
Nikolay Sivov
26a9f62db7
ole32/tests: Added a test for OleRun().
2015-05-08 18:33:35 +09:00
Francois Gouget
514345b401
ole32: Make some storage32 functions static.
2015-05-04 15:07:39 +09:00
Francois Gouget
356748e6bc
ole32: Reorder storage32 functions to avoid forward declarations.
2015-05-04 15:07:35 +09:00
Francois Gouget
58e47c612f
ole32: Fix some storage32 comments.
2015-05-04 15:06:53 +09:00
Nikolay Sivov
bb37d75074
ole32/tests: Fix a test failure on Win8.
2015-05-01 21:12:42 +09:00
Nikolay Sivov
3d33d8a9c4
ole32/tests: Fix test failures on some VMs with limited user permissions.
2015-05-01 21:12:23 +09:00
Francois Gouget
7703852627
ole32; Fix some storage32 comments and standardize some virtual table names.
2015-04-27 15:08:46 +09:00
Huw Davies
a38699084b
ole32/tests: Win 8 releases the drop target in OleUninitialize().
2015-04-20 14:37:13 +09:00
Nikolay Sivov
961b1a270f
ole32: Remove a couple of interface casts.
2015-04-06 12:09:17 +09:00
Huw Davies
f57e08995a
ole32/tests: Add tests for loading a dib 'CONTENTS' stream.
2015-03-25 19:46:03 +09:00
Huw Davies
b0deb315a0
ole32: Implement QueryGetData().
2015-03-25 19:45:58 +09:00
Huw Davies
b4cd2c4dbb
ole32: Add support for drawing the dib format.
2015-03-25 19:45:55 +09:00
Huw Davies
e410f273cd
ole32: Add support for retrieving extents of dib format.
2015-03-25 19:45:52 +09:00
Huw Davies
bbba2c00aa
ole32: Add support for loading dibs.
2015-03-25 19:45:48 +09:00
Huw Davies
547fd746bb
ole32: Separate metafile loading into a helper function.
2015-03-25 19:45:42 +09:00
Huw Davies
480c10cce9
ole32: Add support for parsing the 'CONTENTS' stream.
2015-03-25 19:45:36 +09:00
Huw Davies
d864387aaa
ole32: Split the data loading into a couple of helpers.
2015-03-25 19:45:31 +09:00
Huw Davies
a4e3668f3f
ole32: A cache entry should hold the stream its data is from, not the top-level storage.
2015-03-25 19:45:10 +09:00
Huw Davies
c5e020c5b5
ole32: Read the class id from the top-level storage object.
...
The cache_entries' storages are just references to the same object anyway.
2015-03-25 19:44:59 +09:00
Nikolay Sivov
597515c074
ole32/tests: Return interface pointer instead of impl pointer from QI.
2015-03-24 18:16:34 +09:00
Nikolay Sivov
7d44fa714a
ole32: Return interface pointers instead of impl pointers from QI.
2015-03-24 18:16:30 +09:00
Nikolay Sivov
bc9b29f65d
ole32: Cleanup QI for IEnumMoniker.
2015-03-20 16:23:12 +09:00