Commit Graph

2327 Commits

Author SHA1 Message Date
Nikolay Sivov 1c2bbe8f65 ole32: Handle ILockBytes creation failure (PVS-Studio). 2015-03-17 14:19:12 +09:00
Francois Gouget 7fe0600237 ole32: Remove unneeded NONAMELESSXXX directives. 2015-03-17 14:18:54 +09:00
Nikolay Sivov 0e24c33332 ole32: Handle Stat() failure in OleLoad() (PVS-Studio). 2015-03-13 22:28:31 +09:00
Nikolay Sivov 24dce2b229 ole32: Handle some failures in Inverse() for composite moniker (PVS-Studio). 2015-03-13 22:28:31 +09:00
Nikolay Sivov 46914d8794 ole32: Check ComposeWith() return value too (PVS-Studio). 2015-03-13 22:28:31 +09:00
Sebastian Lackner 66e8060204 ole32: Wait a bit before doing next sanity check in StorageImpl_LockRegionSync. 2015-03-13 00:28:21 +09:00
Alexandre Julliard c6c3ccad36 ole32: Remove confusing uses of the __thiscall specifier. 2015-03-12 14:20:33 +09:00
Sebastian Lackner 59a1bcd96a ole32: Fix call to free_stringtable with uninitialized pointer (Coverity). 2015-03-11 12:47:40 +09:00
Sebastian Lackner 83aca6e7aa ole32: Fix a possible handle leak (Coverity). 2015-03-11 12:46:54 +09:00
Vincent Povirk 0b7c05389b ole32: Fail to open storage files that are locked incorrectly. 2015-03-11 12:45:52 +09:00
Vincent Povirk eead04803f ole32: Add a 20 second timeout when attempting to grab locks. 2015-03-11 12:45:49 +09:00
Vincent Povirk 1645f7b9e3 ole32: Accept only STG_E_INVALIDFUNCTION or success from LockRegionSync. 2015-03-11 12:45:42 +09:00
Vincent Povirk c8791edbdf ole32: Don't use real synchronous locks for storage synchronization. 2015-03-11 12:45:38 +09:00
Vincent Povirk 06b735ae76 ole32: Test the entire range lock block for synchronization. 2015-03-11 12:45:33 +09:00
Nikolay Sivov 44360823b9 oleaut32: Use WdtpInterfacePointer_* functions in VARIANT marshalling. 2015-03-09 22:06:21 +09:00
Francois Gouget fb908b3a95 ole32: Don't define NONAMELESSUNION in olestd.h. It's not needed anyway. 2015-03-06 12:53:55 +09:00
Sebastian Lackner c23db594aa ole32: Fix an invalid usage of InterlockedCompareExchange. 2015-03-03 17:13:46 +09:00
André Hentschel 8af03fef9a ole32: Remove unused macros. 2015-02-23 15:25:56 +09:00
Michael Stefaniuc 73019d5e20 ole32: Remove an always true conditional subexpression (PVS-Studio). 2015-02-18 16:09:13 +09:00
Michael Stefaniuc 514951cc11 ole32: Return the buffer pointer when WdtpInterfacePointer_UserMarshal fails.
Found by PVS-Studio.
2015-01-19 14:20:50 +01:00
Michael Stefaniuc 139ebf643a ole32/tests: Remove unused assignments (PVS-Studio). 2015-01-19 14:20:36 +01:00
Michael Stefaniuc c2da97a5e5 ole32/tests: Actually test some return codes (PVS-Studio). 2015-01-19 14:20:32 +01:00
Qian Hong a940718a4d ole32: Make CoUninitialize and OleUninitialize hotpatchable. 2015-01-16 16:52:25 +01:00
Piotr Caban 95c57c618a ole32: Only change DoDragDrop return value on IDropTarget::Drop failure. 2015-01-15 14:06:24 +01:00
Nikolay Sivov 73419dc484 ole32: Return END_OF_CHAIN for chains starting with special sector values. 2014-12-29 22:20:29 +01:00
André Hentschel 065e4770f0 ole32/tests: Remove unused variable (Clang). 2014-12-02 10:48:37 +01:00
André Hentschel ec8602a812 ole32: Remove unused string (Clang). 2014-12-02 10:31:21 +01:00
Sebastian Lackner f6f55058e4 ole32: Don't process window events when APC calls are queued. 2014-11-21 20:10:04 +09:00
Sebastian Lackner bbf6891030 ole32: Verify arguments for CoWaitForMultipleHandles, always initialize index to zero. 2014-11-21 20:10:01 +09:00
Sebastian Lackner f7f2167fe8 ole32/tests: Add tests for CoWaitForMultipleHandles. 2014-11-21 20:09:58 +09:00
Nikolay Sivov 2487afa5d3 ole32/tests: Use proper wrappers for IObjContext methods. 2014-11-19 23:36:34 +09:00
Nikolay Sivov f7fdaf1c9f ole32/tests: Release() doesn't return HRESULT code. 2014-11-19 23:36:34 +09:00
Bruno Jesus 959ca6ac02 ole32: Avoid a possible null dereference. 2014-11-14 14:15:14 +09:00
Vincent Povirk bab4c36d47 ole32: Add support for pasting CF_BITMAP. 2014-11-14 14:13:01 +09:00
Akihiro Sagawa efdaa4a17a ole32: Search 32-bit registry in 64-bit CoGetPSClsid and vice versa. 2014-07-15 15:34:40 +02:00
Akihiro Sagawa 414398c1e7 ole32: Add KEY_WOW64 support in wrapper registry functions. 2014-07-15 15:33:59 +02:00
Akihiro Sagawa fae8d9db5f ole32/tests: Add CoGetPSClsid WOW64 registry tests. 2014-07-15 15:33:25 +02:00
Piotr Caban cdf2c5f2cb ole32: Don't do any message processing when we're already done with dragdrop operation. 2014-07-03 18:17:40 +02:00
Vincent Povirk 69ff6f74b2 ole32: Simplify the FileMonikerImpl_BindToStorage code. 2014-07-01 12:52:43 +02:00
Frédéric Delanoy 2ab8729020 Assorted spelling/grammar fixes. 2014-06-20 12:19:31 +02:00
Francois Gouget 082d091029 ole32: Return the correct error in FileLockBytesImpl_*LockRegion*(). 2014-06-18 19:55:45 +02:00
Francois Gouget bea2c6f2d5 ole32: Treat STG_E_LOCKVIOLATION the same way as STG_E_ACCESSDENIED as both indicate locking contention. 2014-06-18 19:55:40 +02:00
Francois Gouget cc4ad353d7 ole32: FileLockBytesImpl_WriteAt() should return STG_E_WRITEFAULT for write errors. 2014-06-18 19:55:29 +02:00
Francois Gouget 809b6aeab2 ole32: Fix StorageImpl_LockRegionSync() to actually wait between locking attempts. 2014-06-17 10:37:52 +02:00
Vincent Povirk a270ed90ad ole32: Add tests for STGC_OVERWRITE. 2014-06-16 09:28:45 +02:00
Andrew Eikum c2089cbd0d ole32: Respect TreatAs in CoCreateInstance. 2014-06-16 09:28:38 +02:00
Andrew Eikum 42f5118570 ole32: Implement CoTreatAsClass for classes without AutoTreatAs. 2014-06-16 09:28:29 +02:00
Andrew Eikum e9533ca85a ole32: Fix return type. 2014-06-13 16:22:28 +02:00
Andrew Eikum f02c0ae656 ole32: Fix return value logging. 2014-06-13 16:22:20 +02:00
Guillaume Charifi 216b24527d ole32: CoCreateGuid returns E_INVALIDARG on null-GUID. 2014-06-12 18:23:33 +02:00
Vincent Povirk 8107955273 ole32: Support storage files larger than 4 GB. 2014-06-12 13:19:04 +02:00
Vincent Povirk d32abd7726 ole32: Don't store file size in FileLockBytesImpl. 2014-06-11 13:06:00 +02:00
Vincent Povirk d89d43648f ole32: Invalidate all caches when the transaction sig changes. 2014-05-21 10:19:57 +02:00
Vincent Povirk 77e3de5828 ole32: Use a snapshot file when sharing storages for writing. 2014-05-21 10:19:51 +02:00
Vincent Povirk b3e26be0cb ole32: STGM_NOSNAPSHOT implies deny write. 2014-05-12 10:48:14 +02:00
Vincent Povirk cf75c5368b ole32: Use real blocking operations for storage locking when possible. 2014-05-09 14:16:12 +02:00
Vincent Povirk 45dd716e4e ole32: Warn in cases where we might corrupt storage files. 2014-05-09 14:16:08 +02:00
Vincent Povirk 4f0d36d9a0 ole32: Initial implementation of transaction locking. 2014-05-05 10:53:41 +02:00
Vincent Povirk b4ade51a84 ole32: Accept STGM_TRANSACTED with no share mode specified. 2014-05-05 10:53:38 +02:00
Vincent Povirk 6417a277cf ole32: Map STGM_SHARE_EXCLUSIVE to FILE_SHARE_READ. 2014-05-05 10:53:35 +02:00
Vincent Povirk 04735d6f39 ole32: Use share modes when creating storage files. 2014-05-05 10:53:30 +02:00
Vincent Povirk a60d41d70a ole32: Use symbolic names for range lock offsets. 2014-05-05 10:53:27 +02:00
Francois Gouget 3d70f86fe2 ole32/tests: Add a trailing '\n' to an ok() call. 2014-05-02 17:15:24 +02:00
Huw Davies dcfd901c83 ole32/tests: Fix win8 test failures. 2014-05-01 16:32:09 +02:00
Frédéric Delanoy 2e5cb7aac8 Assorted spelling/grammar fixes. 2014-04-30 18:34:20 +02:00
Vincent Povirk 65887802c5 ole32: Initial storage file locking implementation. 2014-04-29 11:26:51 +02:00
Vincent Povirk e6c58c74ad ole32: Reserve the range lock sector. 2014-04-29 11:26:47 +02:00
Vincent Povirk a00f43d7e0 ole32/tests: Add tests for sharing storages in transacted mode. 2014-04-29 11:26:33 +02:00
Vincent Povirk b8c60aaeec ole32/tests: Add tests for storage locking. 2014-04-29 11:25:55 +02:00
Dmitry Timoshkov 5356c945cd ole32: Add support for VT_DISPATCH/VT_UNKNOWN to PropVariantClear and PropVariantCopy. 2014-04-21 11:09:53 +02:00
Dmitry Timoshkov f9c40c37cd ole32: If number of VT_VECTOR elements is 0 there is no need to allocate memory. 2014-04-18 13:09:19 +02:00
Dmitry Timoshkov d68c13a894 ole32/tests: Add some tests for PropVariantCopy. 2014-04-18 13:09:11 +02:00
Dmitry Timoshkov 5e7251b937 ole32: Revert part of 3cb0c81336.
VT_INT|VT_VECTOR and VT_UINT|VT_VECTOR are not supposed to be supported
by PropVariantClear and PropVariantCopy.
2014-04-18 13:08:59 +02:00
Dmitry Timoshkov f35078ee40 ole32/tests: Fix crashes in PropVariantClear tests under win64. 2014-04-18 13:08:57 +02:00
Dmitry Timoshkov ccefbee73b ole32/tests: Fix crashes in PropVariantClear tests under win2000 and XP. 2014-04-17 10:44:55 +02:00
Dmitry Timoshkov 0946c154fa ole32: PropVariantClear should always reset contents of the passed in PROPVARIANT. 2014-04-16 10:55:07 +02:00
Dmitry Timoshkov 7de7fc653b ole32/tests: Add more tests for PropVariantClear. 2014-04-16 10:54:54 +02:00
Dmitry Timoshkov 3cb0c81336 ole32: Add support for VT_INT/VT_UINT to PropVariantClear and PropVariantCopy. 2014-04-16 10:54:48 +02:00
Piotr Caban 2fbbe143be ole32: Add more SetConvertStg amd WriteFmtUserTypeStg tests. 2014-04-07 19:06:42 +02:00
Piotr Caban 0d4c693a7b ole32: Add OleDoAutoConvert implementation. 2014-04-07 19:06:39 +02:00
Piotr Caban 2db5418e02 ole32: Get CLSID from IStorage object in WriteFmtUserTypeStg. 2014-04-07 19:06:36 +02:00
Piotr Caban 046d7c6d42 ole32: Try to open 1Ole stream before trying to create it in SetConvertStg function. 2014-04-07 19:06:33 +02:00
Piotr Caban f83d24d4f7 ole32: Don't write empty CLIPFORMAT in WriteFmtUserTypeStg. 2014-04-07 19:06:28 +02:00
Piotr Caban 306e98425b ole32: Null terminate strings in STREAM_ReadString function. 2014-04-07 19:06:26 +02:00
Nikolay Sivov 4768ac4413 ole32: Fix leaks on error paths (Coverity). 2014-03-25 10:56:35 +01:00
Nikolay Sivov 43b5f46fcd ole32: Fix some leaks on early returns (Coverity). 2014-03-25 10:56:29 +01:00
Piotr Caban 770213e16c ole32: Update reference counter of returned moniker in CreateGenericComposite. 2014-03-10 19:13:56 +01:00
Vincent Povirk 2e384c4f95 ole32: Use pstgPriority if specified in StgOpenStorage. 2014-03-05 11:48:57 +01:00
Daniel Lehman cdc03fa9b8 ole32: Make some COM functions hot-patchable. 2014-03-05 11:48:13 +01:00
Piotr Caban 9f9fb6b7f1 ole32/tests: Fix DoDragDrop tests. 2014-03-04 11:50:50 +01:00
Stefan Dösinger 97569e4e4a ole32: Make CoCreateInstance hookable for Steam. 2014-03-03 17:46:47 +01:00
Piotr Caban 6d1ab7fa16 ole32: Add more DoDragDrop tests. 2014-03-03 17:02:35 +01:00
Piotr Caban efbd52983a ole32: Fix DROPEFFECT value in OLEDD_TrackStateChange. 2014-03-03 17:02:33 +01:00
Piotr Caban 68d3a136f6 ole32: Merge OLEDD_TrackMouseMove and OLEDD_TrackStateChange functions. 2014-03-03 17:02:32 +01:00
Piotr Caban bc2c6d39a6 ole32: Change DoDragDrop return value on IDropTarget::Drop call. 2014-03-03 17:02:31 +01:00
Nikolay Sivov ffcced0f39 ole32/tests: Handle context generation failure better. 2014-02-20 11:20:00 +01:00
Frédéric Delanoy a0c258460b ole32/tests: Use wine_dbgstr_guid for printing GUIDs. 2014-02-12 19:15:21 +01:00
Nikolay Sivov e593c3068c ole32: Remove ERR() output that's not really helpful. 2014-02-11 19:19:13 +01:00
Nikolay Sivov 747c649d99 ole32: Use precomposed table for GUID from string conversion. 2014-02-11 19:19:13 +01:00
Frédéric Delanoy 0f2bed51bd Assorted spelling fixes. 2014-02-10 15:47:29 +01:00