Vincent Povirk
b1baa05e28
ole32: Remove the term "property type", it's just an STGTY.
...
According to the MS spec, the types in compound storage files are simply
STGTY values, with an extra value named STGTY_ROOT for the root storage.
2009-11-12 13:07:27 +01:00
Vincent Povirk
87ed7d9b8b
ole32: Simplify RenameElement by using the same entry in the file.
2009-11-11 10:54:59 +01:00
Vincent Povirk
274a1d11c1
ole32: Adjust updatePropertyChain signature and name to match removeFromTree.
2009-11-11 10:54:42 +01:00
Vincent Povirk
29c5ba5a77
ole32: Add and use a destroyDirEntry function for deleting directory entries.
...
We need this so we can free any related resources in memory.
2009-11-03 21:31:10 +01:00
Vincent Povirk
bdc4755d7d
ole32: Remove uses of This->base.ancestorStorage in removeFromTree.
2009-11-03 21:30:55 +01:00
Vincent Povirk
4e4810f2c5
ole32: Remove uses of This->base.ancestorStorage in createDirEntry.
2009-11-03 21:30:49 +01:00
Vincent Povirk
7973904d56
ole32: Rename StorageImpl_SetStateBits to StorageBaseImpl_SetStateBits.
2009-11-03 21:30:39 +01:00
Vincent Povirk
17236668c9
ole32: Rename StorageImpl_SetElementTimes to StorageBaseImpl_SetElementTimes.
2009-11-03 21:30:34 +01:00
Vincent Povirk
fd2f35a872
ole32: Rename StorageImpl_DestroyElement to StorageBaseImpl_DestroyElement.
2009-11-03 21:30:27 +01:00
Vincent Povirk
c4aed16590
ole32: Rename StorageImpl_MoveElementTo to StorageBaseImpl_MoveElementTo.
2009-11-03 21:30:21 +01:00
Vincent Povirk
a5f87a4731
ole32: Rename StorageImpl_CopyTo to StorageBaseImpl_CopyTo.
2009-10-30 11:28:22 +01:00
Vincent Povirk
39e35cd7b4
ole32: Don't call internal functions from OLECONVERT_WriteOLE20ToBuffer.
2009-10-30 11:28:14 +01:00
Vincent Povirk
6a36025713
ole32: Don't call internal functions from OLECONVERT_GetOLE20FromOLE10.
2009-10-30 11:28:07 +01:00
Vincent Povirk
4f6e2453e9
ole32: Rename StorageImpl_CreateStorage to StorageBaseImpl_CreateStorage.
...
We don't just use the function for StorageImpl.
2009-10-30 11:27:43 +01:00
Vincent Povirk
f82924ffb9
ole32: Take a StorageBaseImpl in updatePropertyChain.
...
The function is not always called with a top-level storage object, and the
signature should reflect that.
2009-10-30 11:27:29 +01:00
Vincent Povirk
13b9666443
ole32: Convert adjustPropertyChain into real binary tree removal.
...
Finding the parent of a node in a binary tree is a detail that should
be handled inside the function.
2009-10-30 11:27:07 +01:00
Vincent Povirk
fd993b7d9d
ole32: Remove directory entries from the tree before we free them.
...
The directory entry should still be valid as long as it's in the tree.
2009-10-30 11:26:50 +01:00
Vincent Povirk
37f3f3d92a
ole32: Write the new data in getFreeProperty and rename the function.
...
This is to avoid calling WriteProperty with an index to a directory entry
that has not yet been reserved in the file. We reserve the entry by writing
the new data to it.
2009-10-29 15:48:12 +01:00
Vincent Povirk
20dd1886d5
ole32: Split the data conversion functions out of WriteProperty.
2009-10-29 15:47:55 +01:00
Vincent Povirk
ac9d77cd10
ole32: Use the raw directory entry functions in getFreeProperty.
...
The meaning of the "index" argument in Read/WriteProperty will likely
change in the future, but getFreeProperty must work with real indexes
into the file's real directory stream.
2009-10-29 15:47:44 +01:00
Vincent Povirk
e71c696b51
ole32: Move the low-level functionality of WriteProperty to a new function.
2009-10-29 15:47:30 +01:00
Vincent Povirk
56622de951
ole32: Move the low-level functionality of ReadProperty to a new function.
2009-10-29 15:47:20 +01:00
Vincent Povirk
5d550cdc45
ole32: Further simplify adjustPropertyChain and fold in findPlaceholder.
...
The logic is unchanged from the original version.
2009-10-29 15:47:03 +01:00
Vincent Povirk
a7e69339dc
ole32: Reduce duplicated code in adjustPropertyChain.
...
Most of the work is the same regardless of relation type, so bring
those parts out of the relation type test.
2009-10-29 15:46:16 +01:00
Vincent Povirk
911e923fbc
ole32: Don't use IEnumSTATSTGImpl to search for a parent directory entry.
...
Use a binary search to find the parent of a storage object being deleted.
We currently use IEnumSTATSTGImpl to do a linear search, which is
unnecessary.
2009-10-28 11:12:24 +01:00
Vincent Povirk
ee6856d874
ole32: Don't use IEnumSTATSTG to search for elements of storages.
...
We use it to do a linear search of a binary tree, which is overkill.
Replace it with a simple binary search.
2009-10-26 11:17:35 +01:00
Vincent Povirk
dce1ec06c8
ole32: Rename previous/nextProperty to left/rightChild.
...
These fields are used to build a binary tree of elements in a storage. This
should make the usage clearer.
2009-10-26 11:17:23 +01:00
Vincent Povirk
224ddb50f3
ole32: Clarify the timestamp fields in StgProperty.
...
According to the MS spec, these are FILETIME structures containing creation
and modification times.
2009-10-26 11:17:13 +01:00
Andrew Eikum
7b475390e4
ole32: Use rgiidExclude in StorageImpl::CopyTo.
2009-10-12 12:13:11 +02:00
Andrew Eikum
8672289c6e
ole32: Use snbExclude in StorageImpl::CopyTo.
2009-10-06 11:57:37 +02:00
Vincent Povirk
b41822b1dc
ole32: Remove useless comments.
2009-10-05 13:46:00 +02:00
Vincent Povirk
40433554d5
ole32: We do need to implement Commit/Revert for non-root storage.
2009-10-05 13:45:59 +02:00
Markus Stockhausen
abdebcdbbe
ole32/storage32: Fix for reference counters in nested storage.
2009-09-26 16:05:45 +02:00
Eric Pouech
35d6217def
Remove a couple of superfluous casts.
2009-08-29 17:11:26 +02:00
Andrew Eikum
a0d262c545
ole32: Overwrite previous CompObj instead of failing.
2009-08-28 11:54:30 +02:00
Andrew Eikum
a0aaa65507
ole32: Don't read past the end of the stream when converting block types.
2009-08-24 12:02:40 +02:00
Andrew Eikum
85a5867308
ole32: Add big block chain to small block chain conversion routine.
2009-08-20 19:43:30 +02:00
Andrew Eikum
972e4a22f8
ole32: Allow small block chains with no property.
2009-08-20 19:43:30 +02:00
Andrew Eikum
7ca31e83f0
ole32: Repair leak on error path.
2009-08-20 19:43:30 +02:00
Huw Davies
cc8c36c44c
ole32: In simple mode, CreateStream with the STGM_CREATE flag should fail.
2009-06-02 11:57:21 +02:00
Huw Davies
0faf155887
ole32: Store the creation flag - STGM_SIMPLE depends on this.
2009-06-02 11:57:21 +02:00
Huw Davies
8b7b67712f
ole32: Rename a parameter to better reflect its use.
2009-06-02 11:57:21 +02:00
Vincent Povirk
6f05770fbf
ole32: Don't ignore a failure to delete the old element in CreateStorage.
2009-06-01 16:16:02 +02:00
Vincent Povirk
e21adbf45a
ole32: Fix return code of DeleteStorage for read only storage.
2009-06-01 16:16:02 +02:00
Vincent Povirk
93a155381f
ole32: Fix crash when calling CreateStorage on read only storage.
2009-06-01 16:16:02 +02:00
Vincent Povirk
4a0901fb87
ole32: Fix crash when calling CreateStream on read only storage.
2009-06-01 16:16:02 +02:00
Huw Davies
2e11733f45
ole32: Don't ask for a name if it's not required.
2009-04-28 14:47:54 +02:00
Austin English
2fe86fb7cd
ole32: Rename a macro to prevent a conflict on NetBSD.
2009-04-24 11:51:53 +02:00
Vincent Povirk
9c02fda4a9
ole32: When renaming a storage element, delete from the current iface.
2009-04-02 16:28:30 +02:00
Michael Stefaniuc
0449701c31
ole32: Remove superfluous pointer casts.
2009-02-11 12:29:56 +01:00
Andrey Turkin
d20ab01ed2
ole32: Do not crash in WriteClassStg if passed NULL pointer.
2009-01-15 12:42:33 +01:00
Francois Gouget
b3bf746ff9
Straighten out some ellipses.
2008-11-26 12:33:34 +01:00
Michael Stefaniuc
79e31f6d40
ole32: Do not cast NULL.
2008-11-03 13:41:17 +01:00
Michael Stefaniuc
3ed8ffcc99
ole32: Use the right FAILED/SUCCEEDED macro instead of negating the opposite.
2008-10-08 13:41:58 +02:00
James Hawkins
5ea0d9d807
ole32: Storage sharing should be implemented in ole32, not the lower-level file API.
2008-08-19 13:55:53 +02:00
Rob Shearman
23bb94c005
ole32: Remove dead code in StorageImpl_LoadFileHeader.
2008-08-18 17:34:13 +02:00
Rob Shearman
064b6fce0c
ole32: Fix testing of HRESULT types with not operator instead of comparing against S_OK.
...
This makes it more obvious what the code is doing.
2008-08-18 17:34:12 +02:00
Andrew Talbot
749184a1e8
ole32: Remove unneeded address-of operators from array names.
2008-07-11 14:06:31 +02:00
Andrew Talbot
82e23af814
ole32: Remove unneeded address-of operators from function name.
2008-07-07 12:31:43 +02:00
Austin English
1b24da3aa0
ole32: Spelling fixes.
2008-04-10 09:51:12 +02:00
Andrew Talbot
e7b0f07c3e
ole32: Assign to structs instead of using memcpy.
2008-03-11 12:11:51 +01:00
James Hawkins
e4c1227ec9
janitorial: Remove links to any microsoft site.
2008-03-01 12:17:17 +01:00
Rob Shearman
96fafe1661
ole32: Fix the character count passed to GetClipboardFormatNameW in WriteFmtUserTypeStg.
2008-02-15 11:04:09 +01:00
Andrew Talbot
554644fd0d
ole32: Remove unneeded casts.
2008-01-15 11:38:08 +01:00
Rob Shearman
5ce2d25b32
ole32: Reset the parent storage on overwritten streams so that operations on them now fail.
2007-10-22 12:36:07 +02:00
Aric Stewart
2d8cd767b2
ole32: Properly update the SmallBlockDepotCount when adding more blocks.
2007-08-28 11:58:44 +02:00
Andrew Talbot
ca78a8b65f
ole32: Cast-qual warnings fix.
2007-07-06 18:11:46 +02:00
Andrew Talbot
67d667b828
ole32: Constify some variables.
2007-07-05 19:52:35 +02:00
Aric Stewart
f8c8355d85
ole32: Implementation of state bits for IStorage.
2007-06-07 23:09:10 +02:00
Rob Shearman
b005e9ed0d
ole32: Move the logic in StgCreateDocfile for "if no share mode given then DENY_NONE is the default" to before the validateSTGM check.
...
Add a test that shows this behaviour is correct.
Remove a test on the access mode that is redundant because it is already
done in validateSTGM.
2007-05-10 12:15:11 +02:00
Michael Stefaniuc
5f62da109e
janitorial: Pass HEAP_ZERO_MEMORY as flag to HeapAlloc() instead of zeroing out the allocated memory in a later call.
2007-04-25 12:26:07 +02:00
Dmitry Timoshkov
dce12498d0
ole32: Move the storage signatures to the appropriate file that uses them.
2007-03-21 11:59:41 +01:00
Aric Stewart
838eb4037f
ole32: Rework storage with blockfiles to properly use ILockBytes interfaces.
...
Rework storage to make all its interactions with the underlying data go
though ReadAt and WriteAt to allow for an ILockBytes underlying layer.
Implement ReadAt and WriteAt in stg_bigblockfile.c for blockfiles.
2007-03-20 12:36:45 +01:00
Rob Shearman
3bd31cfd16
ole32: The stream returned by StgStreamImpl_Clone should have one reference, so call AddRef before returning.
...
Move the call to StorageBaseImpl_AddStream to StgStreamImpl_Construct to
fix StgStreamImpl_Clone, which forgets to call it.
Add tests for OLE structured storage tests for IStream::Clone.
2007-02-26 17:33:36 +01:00
Rob Shearman
b1ee49a74d
ole32: ReadClassStm should return STG_E_READFAULT is not all of the data could be read, not S_FALSE.
...
Clear pclsid in case of errors.
Add tests for ReadClassStm.
2007-01-10 12:17:00 +01:00
Rob Shearman
35548d15c4
ole32: Fix Read/WriteClassStm to return an error if the passed in stream pointer is NULL.
2007-01-10 12:14:24 +01:00
Michael Gardiner
f9d8449db2
ole32: Stop StgOpenStorage from creating a file when it does not already exist.
2007-01-04 20:53:39 +01:00
Kirill K. Smirnov
3cd3ca68fe
ole32: Fix logic in Storage32Impl_SmallBlocksToBigBlocks function.
2006-11-27 17:44:47 +01:00
Michael Stefaniuc
21ff87bf50
ole32: Win64 printf format warning fixes.
2006-10-16 10:53:28 +02:00
Andrey Turkin
63f88b3d57
ole32: StgOpenStorage on non-existent file should create it (with test).
2006-09-28 14:14:59 +02:00
Robert Shearman
aa336618ec
ole32: Add a check for a condition where a stream has an invalid size
...
and so there aren't enough blocks in the chain to write data into.
2006-09-11 12:28:23 +02:00
Robert Shearman
106156cb75
ole32: Remove some assertions in the stuctured storage code by
...
returning error codes to the caller and by handling the error
condition.
2006-09-11 12:28:12 +02:00
Robert Shearman
79f7318a11
ole32: Convert the *_{Read,Write}At structured storage functions to
...
return HRESULTs instead of BOOLs so that errors can be properly
propagated from lower levels.
2006-09-11 12:27:45 +02:00
Robert Shearman
f42d61df0d
ole32: Move some functions out of compobj.c that don't belong there and update the copyright statement.
2006-08-16 16:42:32 +02:00
Robert Shearman
8d7bfca965
ole32: Fix a typo in IEnumSTATSTGImpl_QueryInterface where IStorage was being compared against instead of IEnumSTATSTG.
2006-08-09 20:40:11 +02:00
Robert Shearman
f0dc9deff0
ole32: Ensure that a returned free block is valid in storage.
...
Otherwise, an IStream_SetSize call followed by an IStream_Read call
could fail with STG_E_DOCFILECORRUPT.
2006-08-03 22:23:27 +02:00
Alexandre Julliard
518ee99f6f
ole32: Make some functions and variables static.
2006-08-02 13:31:26 +02:00
Robert Shearman
1a5cd3ca9b
ole32: Remove a check on the share mode for the NULL filename case as the check is already done earlier in StgCreateDocfile.
2006-07-31 21:25:35 +02:00
Mike McCormack
63cbef27a2
ole32: Use IsGUIDEqual to compare IIDs.
2006-07-31 17:18:24 +02:00
Mike McCormack
6ede65596a
ole32: Add function parameters to FIXME messages.
2006-07-31 10:53:19 +02:00
Mike McCormack
24e69d544b
ole32: Add a test showing what STGM_TRANSACTED does for streams.
2006-07-31 10:53:15 +02:00
Mike McCormack
fd61c3f24b
ole32: Add some missing traces.
2006-07-29 11:55:43 +02:00
Mike McCormack
55ab809854
ole32: Only print a FIXME if necessary in StgOpenStorageEx.
2006-07-11 12:41:42 +02:00
Alexandre Julliard
ae525c1441
ole32: Make the virtual table functions static where possible.
2006-06-10 11:59:15 +02:00
Troy Rollo
bdbc482651
ole32: Use STGM_WRITE when opening child storage to delete its children.
2006-05-31 11:45:29 +02:00
Jonathan Ernst
360a3f9142
Update the address of the Free Software Foundation.
2006-05-23 14:11:13 +02:00
Troy Rollo
1be295fb47
ole32: Fix excessive file sizes for Storage files.
...
The IStorage (DocFile) implementation was adding empty blocks at the
end of the file every time a caller wrote data that was not a multiple
of 512 bytes. If the caller made a lot of very small writes the file
size could be huge even though the data in the file was tiny. This was
caused by BlockChainStream_SetSize trying to allocate file blocks for
the new data using a condition that bore no relationship to the
required condition, and it was not necessary to do so at that time
since it is done (the right way) by StorageImpl_GetNextFreeBigBlock
(called via BlockChainStream_Enlarge).
2006-05-23 13:00:13 +02:00
Mike Hearn
27800ef4cc
ole32: Add StgCreateFile test and conformance fix.
2006-05-08 16:04:51 +02:00
Robert Shearman
d9b7c36009
ole32: Fix typos in StgCreateStorageEx and StgOpenStorageEx.
2006-05-05 21:51:43 +02:00
Robert Shearman
6dd5dbef64
ole32: STGM_PRIORITY allows other IStorage objects to be opened in transacted mode with read/write access.
2006-05-05 21:51:31 +02:00
Robert Shearman
693da8c471
ole32: Check that the storage was opened with write access before creating a new stream or sub-storage.
2006-05-05 21:50:12 +02:00
Robert Shearman
5d051af6ae
ole32: Copy the mode flags into the STATSTG structure in IStorage::Stat.
...
Copy the mode flags into the STATSTG structure in IStorage::Stat. Don't
store the STGM_CREATE flag in openFlags, since it is only relevant when
opening the stream and the tests show that it isn't returned in the
STATSTG structure.
2006-05-05 21:49:39 +02:00
Robert Shearman
b2207d83ad
ole32: Fix access right check for opening and creating streams and storages.
...
Check the access mode for opening and creating streams and storages
doesn't exceed the access rights the current storage was opened with,
not the parent storage.
2006-05-05 21:49:04 +02:00
James Hawkins
2b5963f8e2
ole32: StorageImpl_GetROBigBlock can return NULL so check for NULL before doing a memcpy.
2006-05-05 17:51:08 +02:00
Mike McCormack
11e4b21a30
ole32: More tests and fixes for STGM_PRIORITY.
2006-04-18 11:15:03 +02:00
Mike McCormack
eed120995b
ole32: STGM_PRIORITY implies STGM_SHARE_EXCLUSIVE.
2006-04-03 12:15:34 +02:00
Mike McCormack
50436da519
ole32: Fix StgOpenStorage's handling of the STGM_PRIORITY flag.
2006-03-30 12:38:08 +02:00
Francois Gouget
6bddeb1cf7
Assorted spelling fixes.
2006-03-21 20:10:39 +01:00
Vitaly Lipatov
aee52b747e
ole32: Add descriptions for StgCreateDocfile and StgIsStorageFile functions.
2006-02-24 21:10:27 +01:00
Dr J A Gow
e3af1227c9
ole32: Fix stream ref counting.
...
Stream methods called after parent object has been closed correctly
return STG_E_REVERTED.
Stream refcounting fixed. Now can safely call IStorage destructor
before IStream destructor and guarantee file will be closed.
2006-02-21 11:18:05 +01:00
Dr J A Gow
c74e5a784d
ole32: Fix up permissions when opening streams.
...
Fix up permissions when opening streams in storage objects when
storage object has been opened in transacted mode.
2006-02-21 11:17:32 +01:00
Robert Shearman
95312fcb63
ole: Remove "stub" from TRACEs of functions that aren't stubs.
2006-01-06 21:08:09 +01:00
Ulrich Czekalla
427920f8a2
ole: Fix SmallBlocksToBigBlocks loop.
...
Stop copying data when read returns 0 bytes
2006-01-06 12:16:04 +01:00
Ulrich Czekalla
707fa2c3a2
ole32: Return error instead of asserting if storage file is corrupt.
2005-12-22 17:15:05 +01:00
Markus Amsler
ae542af541
Improve c2man Documented-Total count.
2005-11-09 10:30:57 +00:00
Robert Shearman
6bc4327c92
- Initialize out pointer to NULL before access check in
...
IStorage_CreateStorage.
- WriteClassStg should return E_INVALIDARG if pstg is NULL instead of
asserting.
- ReadClassStg should return E_INVALIDARG if pstg is NULL instead of
crashing and a NULL pclsid should cause it to return the same
value.
2005-09-22 10:34:40 +00:00
Richard Cohen
908e9e889e
Relax the share mode validation for transacted storage, with a test.
2005-09-07 09:22:15 +00:00
Mike McCormack
61aabd66f5
Warning fixes for gcc 4.0.
2005-08-15 10:49:39 +00:00
Alexandre Julliard
04b7382db9
Remove duplicate definition of FILE_BEGIN.
2005-07-28 10:24:01 +00:00
Stefan Huehner
4f82e547d7
Fix some missing-declarations warnings.
2005-07-24 17:11:59 +00:00
Vitaly Lipatov
e633b45300
Added some documentation.
2005-07-07 17:21:44 +00:00
Dmitry Timoshkov
eba47f1dfe
Make remaining OLE interface vtables const.
2005-06-06 19:50:35 +00:00
Pierre d'Herbemont
49b1d335d9
Big Endian specific code fixes in order to conform with
...
NONAMELESSSTRUCT.
2005-05-18 09:44:13 +00:00
Juan Lang
2507264e05
- maintain proper byte order
...
- maintain PROPSETFLAG_ANSI flag based on codepage
- update comments
2005-05-14 11:06:44 +00:00
Mike McCormack
e3b43fa458
Make sure a stream can't be created in read only storage.
2005-05-13 13:58:43 +00:00
Mike McCormack
809cf354e4
Fix a memory leak in the ole storage implementation.
2005-05-10 15:59:59 +00:00
Matthew Mastracci
6e028f414d
Replace stub entry for StgOpenStorageEx with call to StgOpenStorage.
2005-05-06 14:32:30 +00:00
Matthew Mastracci
8188790946
Replace StgCreateStorageEx stub with call to StgCreateDocfile and add
...
required STGFMT_* enumerations.
2005-05-05 16:44:05 +00:00
Juan Lang
b99dfb0c1a
Define and use endian conversion macros for big-endian machines.
2005-04-24 17:22:26 +00:00
Mike McCormack
6714664dee
Eliminate forward declarations, make functions static.
2005-03-31 15:26:30 +00:00
Huw Davies
9be7f2789f
WriteFmtUserTypeStg doesn't pull a CLSID from the registry - it's
...
unclear when (if at all) this gets written.
2005-03-29 18:56:22 +00:00
Mike McCormack
17c3106896
Eliminate casts of the return value of HeapAlloc.
2005-03-21 11:25:13 +00:00
Troy Rollo
963b63ecbd
ix test for STGM_SHARE_EXCLUSIVE on nameless DocFiles.
2005-03-21 10:30:01 +00:00
Juan Lang
ac24801db0
Add a comment about byte order, change types to reduce casting and not
...
cast away constness.
2005-03-17 10:25:13 +00:00
Mike McCormack
77fc6a5d82
StgOpenStorage shouldn't open zero length storage files.
2005-03-11 13:17:10 +00:00
Mike McCormack
6f2f76c410
Shared reading of storage files requires STGM_TRANSACTED.
2005-03-09 11:44:59 +00:00
Mike McCormack
e9d334d0c9
Fix more incorrect uses of STGM_ enumerations.
2005-03-07 12:24:42 +00:00
Juan Lang
01239efa4a
Implement StgCreatePropSetStg.
2005-03-07 10:59:09 +00:00
Mike McCormack
a7609ee155
Test and fix grfMode handling in StgOpenDocfile.
2005-03-05 10:48:11 +00:00
Mike McCormack
607b43e6b4
Implement StgSetTimes.
2005-03-04 10:48:17 +00:00
Paul Vriens
8922da9ed4
Added some TRACE statements.
2005-02-25 13:58:37 +00:00
Mike McCormack
db69dcb5c1
Add struct StorageBaseImpl at the start of derived structures instead
...
of trying to keep the first members the same.
2005-02-24 19:39:27 +00:00
Mike McCormack
a6a91a440b
Implement and test IPropertySetStorage.
2005-02-21 20:58:09 +00:00
Mike McCormack
71424b80e5
Tests and fixes for StgOpenStorage.
2005-01-11 15:08:08 +00:00
Mike McCormack
6f20133705
Test and fix a few problems with OLE storage streams.
2005-01-11 10:44:28 +00:00
Mike McCormack
b146b75c27
Test and fix StgCreateDocFile grfModes.
2005-01-10 12:26:25 +00:00
Michael Stefaniuc
5ad7d858e0
Do not check for non NULL pointer before HeapFree'ing it. It's
...
redundant.
2004-12-23 17:06:43 +00:00
Alexandre Julliard
ebe3c529b1
Janitorial: C booleans must not be compared against TRUE.
2004-12-09 14:07:59 +00:00
Eric Pouech
0a258964c2
Const correctness fixes.
2004-11-30 21:38:57 +00:00
Francois Gouget
486d020c1b
Don't define COBJMACROS in objbase.h.
...
Update the Wine sources accordingly.
2004-10-07 03:06:48 +00:00
Joris Huizer
34cffce6f9
Ref count increment/decrement cleanup.
2004-09-24 01:16:53 +00:00
Hans Leidekker
719a789792
Fix signed/unsigned comparison warnings.
2004-09-22 02:46:38 +00:00
Alexandre Julliard
241a4c34b1
Get rid of the non-standard ICOM_THIS macro.
2004-09-09 21:03:58 +00:00
Alexandre Julliard
f714b39762
Get rid of the no longer used ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
...
macro.
2004-08-23 19:39:48 +00:00
Alexandre Julliard
48c4bb3c31
Get rid of the non-standard ICOM_VTABLE macro.
2004-08-12 23:00:51 +00:00
Mike McCormack
f0baf82b36
stat on memory storage should return a NULL name, not "".
2004-08-10 23:41:58 +00:00
Marcus Meissner
e3a37c8a26
Revert broken strict aliasing fix.
2004-05-21 20:52:57 +00:00
Patrik Stridvall
070db4e5de
Fixed some issues found by winapi_check.
2004-05-17 21:08:31 +00:00
Francois Gouget
cfc3943c5f
Make our ascii strings static const.
...
Remove a couple string variables that were used only once and use the
string literal directly.
2004-05-04 04:13:05 +00:00
Marcus Meissner
ff39b877a4
Fixed strict aliasing issues in dlls/ole32.
2004-05-04 03:10:50 +00:00
Francois Gouget
7a58c6ec53
Add a stub for StgCreateStorageEx(). Returns
...
STG_E_UNIMPLEMENTEDFUNCTION as per MSDN. Fixes an error saving files
in Word XP.
2004-04-30 18:32:20 +00:00
Francois Gouget
8fc374d8b4
Make Unicode strings 'static const'.
2004-04-20 02:14:00 +00:00
Francois Gouget
52c0832161
Make Unicode strings static const.
2004-04-20 01:12:17 +00:00
Alexandre Julliard
d07c1004e3
Moved a few remaining 16-bit definitions out of the standard headers.
2004-01-23 22:51:41 +00:00
Ge van Geldorp
100e11309b
Fix various function prototypes to conform to PSDK.
2004-01-23 20:57:26 +00:00
Ge van Geldorp
399901e054
Rename LARGE_INTEGER and ULARGE_INTEGER members "s" to "u" to conform
...
with PSDK.
2004-01-23 01:51:33 +00:00
Mike McCormack
ac57fc20b6
Change erroneous malloc to HeapAlloc.
2003-09-22 19:46:13 +00:00
Dave Miller
47fb938d54
Removed ordinals from comments.
2003-09-11 03:06:25 +00:00
Alexandre Julliard
e37c6e18d0
Fixed header dependencies to be fully compatible with the Windows
...
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Francois Gouget
56aaea2f43
Spelling fixes.
2003-07-09 02:52:57 +00:00
Francois Gouget
9591836ffb
'sizeof type' is best avoided as it won't always compile (e.g. 'int
...
main() {return sizeof int;}'). Use 'sizeof(type)' instead.
2003-06-18 19:45:22 +00:00
Francois Gouget
f803e2a92d
Fix miscellaneous spelling errors and typos.
2003-05-13 00:41:57 +00:00
Mike McCormack
936d1059e2
Implemented WriteFmtUserTypeStg and ReadFmtUserTypeStg.
2003-05-11 02:40:29 +00:00
Alexandre Julliard
c2ebe1ff93
Removed uses of the non standard ICOM_VTBL macro.
2003-04-10 18:17:34 +00:00
Dimitrie O. Paun
297f3d898d
Define NONAMELESS{STRUCT,UNION} explicitly in the files that need them.
2003-01-07 20:36:20 +00:00
Ryan Cumming
42867265ca
- Move StgIsStorageFile16's implementation to StgIsStorageFile; port
...
it to Win32.
- Move StgIsStorageFile from storage.c to storage32.c.
- StgIsStorageFile only returns S_OK, STG_E_FILENOTFOUND, and S_FALSE.
- StgIsStorageFile doesn't check if a file is large enough to be a
storage file, it only checks for the presence of the 8-byte magic.
2002-11-18 19:43:58 +00:00
Huw D M Davies
9a8fc06357
DWORD at offset 0x40 in the header is the number of big blocks in the
...
small block depot chain.
Better failure handling.
2002-08-16 19:55:14 +00:00
Vincent Béron
9a62491660
Removed trailing whitespace.
2002-05-31 23:06:46 +00:00
Alexandre Julliard
0799c1a780
Added LGPL standard comment, and copyright notices where necessary.
...
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
Mike McCormack
c129764af1
Fixed merge error.
2002-02-28 20:46:31 +00:00
Lawson Whitney
d23cf08262
Fix off-by-one error in placing trailing \0.
2002-02-08 17:09:11 +00:00
Alexandre Julliard
925d602766
CodeWeavers
...
Small fixes.
2002-01-31 21:01:35 +00:00
Jukka Heinonen
420f6c0030
Name of the structured storage file root node is path of the file, not
...
the name of the root node stored in the file.
When reading streams stored into structured storage files, EOF is not
supposed to cause an error if at least one byte can be returned.
2002-01-01 00:13:32 +00:00
Marcus Meissner
1ef0d39c66
Made some FIXME()s print the respective strings passed.
...
Changed StgSetTimes() to correct type.
2001-07-14 00:47:52 +00:00
Patrik Stridvall
e9782fa1fc
Documentation fixes.
2001-07-12 22:33:51 +00:00
Patrik Stridvall
044855c6ec
Documentation fixes.
2001-07-11 18:56:41 +00:00
Patrik Stridvall
8b216b3d02
Documentation ordinal fixes.
2001-06-19 18:20:47 +00:00
Patrik Stridvall
b3086a7593
Fixed some issues found by winapi_check.
2001-04-25 19:54:21 +00:00
Dmitry Timoshkov
973355f617
Return STG_E_FILEALREADYEXISTS in ole32.StgOpenStorage if the file is
...
not a storage object.
2001-04-16 18:57:18 +00:00
Marcus Meissner
826c1af100
Added GetConvertStg stub.
2001-04-09 18:33:03 +00:00
Gerard Patel
282bdb3564
Don't try to create file twice in the NULL filename case for
...
StgCreateDocFile.
2001-03-31 00:51:54 +00:00
Francois Gouget
282f7270c1
Small 'typos in comments' fixes.
2001-02-28 05:31:02 +00:00
Alexandre Julliard
24a62ab9b0
Got rid of the Wine internal lstrcpy* functions and of winestring.h.
2000-11-28 22:40:56 +00:00
Marcus Meissner
52475287da
Fixed OleLoadFromStream: Dereference ppvObj and get IPersistStream
...
instead of accessing IUnknown.
2000-10-28 00:30:42 +00:00
Alexandre Julliard
072dfb57e3
Removed inclusion of wine/winestring.h from winbase.h and added it to
...
the C files that need it.
2000-09-25 23:30:56 +00:00
Alexandre Julliard
c7e7df8b17
Replaced all lstr* calls from inside Wine code by their str* equivalent.
2000-08-14 14:41:19 +00:00
Noomen Hamza
3b3779b260
OleConvertOLESTREAMToIStorage fails (returns REGDB_E_CLASSNOTREG) when
...
the CLSID of the OLE object is not found in the registry. Fixed.
2000-06-20 20:49:53 +00:00
Patrik Stridvall
54fe8380a1
Fixed some issues reported by winapi_check.
2000-04-06 20:21:16 +00:00
Patrik Stridvall
2d6457c11a
Added/fixed some documentation reported by winapi_check.
2000-03-28 20:22:59 +00:00
Francois Gouget
6d77d3a1df
Use min/max instead of MIN/MAX.
2000-03-25 21:44:35 +00:00
Patrik Stridvall
d628f43693
Fixed some ANSI C violations.
2000-03-24 20:42:08 +00:00
Abey George
21dbb6c085
Implemented OLE clipboard functionality for Embed Source format.
...
It helps you cut and paste data with Embed Source format between
applications. It also implements OleCreateFromData and
OleQueryCreateFromData and fixes some bugs in datacache.c.
2000-03-08 18:49:36 +00:00
Patrik Stridvall
7e9913f463
Fixed some warnings.
2000-03-08 18:25:22 +00:00
Alexandre Julliard
8eba5c2a21
Murali Pattathe
...
This is the patch for the OleConvertOLESTREAMToIStorage wine API.
This API calls another function called OLECONVERT_LoadOLE10 which
basically read the OLE stream from the file through the callback
function (this is passed by the application).
The reading format was wrong. Still I am not very sure this is 100 %
correct format. I did some reverse engineering and found the format. I
have tried with different OLE object and its worked in paradox. I
haven't tested with any other apps.
2000-02-29 22:03:14 +00:00
Pierre Mageau
89aa86165f
Implementation of OleConvert routines.
...
Thuy Nguyen <thuy@macadamian.com>
Don't allow to resize stream open in read only mode
Allow write access for stream/storage open with STGM_READWRITE.
StgOpenStorage return values are now more detailed.
Don't rely on STGM_CREATE flag in the Storage constructor.
Preventing to write out of date property.
Owen Wang <owenw@corel.ca>
Allow both positive & negative 32-bit integers as with MFC assumption.
This patch improves the 32bit limit on IStream::*_Seek operations.
John Li <johnl@corel.ca>
When WP opens a linked file, the malloc function in
OLECONVERT_LoadOLE10(...) returns a NULL. This causes a later Wine
crash. The actual problem is the function reading a large data length.
2000-02-25 20:58:25 +00:00
Andreas Mohr
8cd93514f0
- add some documentation items
...
- fix some spelling
- fix some warnings
2000-01-29 21:12:58 +00:00
Gerard Patel
617f6908de
Returns an error if trying to write to a stream opened for read.
2000-01-26 02:04:44 +00:00
Jim Aston
f06c8789e3
Added stub for StgSetTimes.
1999-11-21 00:49:20 +00:00
Francois Gouget
01c9ac401f
Generalized the use of the new ICOM_VFIELD and ICOM_VTBL macros.
1999-10-31 01:59:23 +00:00
Ulrich Weigand
2a722f498a
Moved bulk of OLE implementation to dlls/ subdirectories.
1999-09-19 18:36:53 +00:00