Commit Graph

407 Commits

Author SHA1 Message Date
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
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
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 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
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
Dmitry Timoshkov 76f9d93344 ole32: Fix a memory leak. 2015-07-13 22:08:38 +09:00
Vincent Povirk 9cf835a947 ole32: Use grfLocksSupported to decide when LockRegion is implemented. 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
Vincent Povirk 3f83b788d4 ole32: Fix storage locking for read-only exclusive mode. 2015-06-12 21:22:42 +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 7703852627 ole32; Fix some storage32 comments and standardize some virtual table names. 2015-04-27 15:08:46 +09:00
Nikolay Sivov 7d44fa714a ole32: Return interface pointers instead of impl pointers from QI. 2015-03-24 18:16:30 +09:00
Francois Gouget 7fe0600237 ole32: Remove unneeded NONAMELESSXXX directives. 2015-03-17 14:18:54 +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
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
Michael Stefaniuc 73019d5e20 ole32: Remove an always true conditional subexpression (PVS-Studio). 2015-02-18 16:09:13 +09:00
Nikolay Sivov 73419dc484 ole32: Return END_OF_CHAIN for chains starting with special sector values. 2014-12-29 22:20:29 +01: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 809b6aeab2 ole32: Fix StorageImpl_LockRegionSync() to actually wait between locking attempts. 2014-06-17 10:37:52 +02:00
Andrew Eikum e9533ca85a ole32: Fix return type. 2014-06-13 16:22:28 +02:00
Vincent Povirk 8107955273 ole32: Support storage files larger than 4 GB. 2014-06-12 13:19:04 +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
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
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
Vincent Povirk 2e384c4f95 ole32: Use pstgPriority if specified in StgOpenStorage. 2014-03-05 11:48:57 +01:00
Frédéric Delanoy 37abf45e6c ole32: Use BOOL type where appropriate. 2013-11-20 11:25:55 +01:00
Frédéric Delanoy 4bb61ec0df ole32: Use BOOL type where appropriate. 2013-10-15 14:28:20 +02:00
Aric Stewart df6115aea6 ole32: Do not fail if partial blocks are read. 2013-06-17 19:30:49 +02:00
Aric Stewart b69d67f146 ole32: Not all uses of StorageImpl_ReadBigBlock fail if no bytes are read. 2013-06-12 15:51:07 +02:00