Commit Graph

814 Commits

Author SHA1 Message Date
Robert Shearman
74407105d2 Check the return value from register_key_guid in all the DLL registering code. 2006-05-10 19:38:04 +02:00
Robert Shearman
5a8536a18d ole32: Add a test for IMoniker_IsDirty. 2006-05-10 19:26:22 +02:00
Robert Shearman
af6d97ad36 ole32: Exception handling shouldn't be needed around the call to IRpcStubBuffer_Invoke.
It should have its own exception handler to catch any exceptions that are raised.
2006-05-10 19:24:24 +02:00
Robert Shearman
1c6f16a384 ole32: The type check in AntiMonikerImpl_CommonPrefixWith should be for anti-monikers, not item-monikers. 2006-05-08 21:14:36 +02:00
Robert Shearman
ae62ab039f ole32: Implement several class moniker functions using the description provided on MSDN. 2006-05-08 21:14:28 +02:00
Robert Shearman
b155f233f3 ole32: Remove duplicated CLSIDs. 2006-05-08 21:13:38 +02:00
Robert Shearman
8a4f71c61e ole32: Add an implementation of class monikers. 2006-05-08 21:13:32 +02:00
Robert Shearman
71a7393f45 ole32: Add tests for IsRunning, GetTimeOfLastChange, BindToObject, BindToStorage and Inverse. 2006-05-08 21:04:26 +02:00
Robert Shearman
288fb09b31 ole32: Fix regression caused by an earlier patch that removed the
check for the composite moniker having only one moniker in it. In this
case, return the one moniker and free the memory associate with the
composite moniker.
2006-05-08 20:59:25 +02:00
Robert Shearman
96646d532f ole32: Fix infinite recursion in CompositeMonikerImpl_GetTimeOfLastChange by handling pmkToLeft properly.
Fix a typo where CompositeMonikerImpl_GetTimeOfLastChange was called 
instead of the virtual implementation of it on mostRightMk.
2006-05-08 20:59:04 +02:00
Robert Shearman
91afe981e0 ole32: Fix infinite recursion in CompositeMonikerImpl_BindToStorage. 2006-05-08 20:58:53 +02:00
Mike Hearn
27800ef4cc ole32: Add StgCreateFile test and conformance fix. 2006-05-08 16:04:51 +02:00
Alexandre Julliard
fec050c88d ole32: Properly initialize hash value in CompositeMonikerImpl_Hash. 2006-05-08 16:04:41 +02:00
Robert Shearman
b6592efa83 ole32: Fix typos in CompositeMonikerImpl_BindToObject and CompositeMonikerImpl_BindToStorage. 2006-05-08 15:45:08 +02:00
Robert Shearman
806f6e7bd6 ole32: Create moniker enumerator with an initial reference count. 2006-05-08 15:44:58 +02:00
Robert Shearman
91e51971c0 ole32: Test moniker display names. 2006-05-08 15:44:49 +02:00
Robert Shearman
d8563f1eba ole32: Add a test for IMoniker_IsDirty. 2006-05-08 15:44:39 +02:00
Robert Shearman
77188bbeab ole32: Test unmarshaling the moniker instead of just releasing the marshaled data. 2006-05-08 15:44:27 +02:00
Robert Shearman
57b42ae7bc ole32: Make the size returned by CompositeMonikerImpl_GetMarshalSizeMax match that returned by native. 2006-05-08 15:44:15 +02:00
Robert Shearman
50ec1d6849 ole32: Add on the size of the whole OBJREF structure in the case of custom marshaling. 2006-05-08 15:44:06 +02:00
Robert Shearman
340f7a3ec0 ole32: Fix the algorithm used in CompositeMonikerImpl_Hash to match native. 2006-05-08 15:43:46 +02:00
Robert Shearman
e97709ff6d ole32: Fix the algorithm used in ItemMonikerImpl_Hash to match native. 2006-05-08 15:43:35 +02:00
Robert Shearman
b011a2ba8f ole32: Add tests for generic composite monikers. 2006-05-08 15:43:27 +02:00
Robert Shearman
caefc34084 ole32: Add a class factory for composite monikers. 2006-05-08 15:43:16 +02:00
Robert Shearman
fa8472c35a ole32: Allocate memory for the generic composite moniker in CompositeMonikerImpl_Construct.
Don't leak memory in the case of newCompositeMoniker->tabLastIndex == 1, 
which can't happen anyway.
Allow construction of a moniker with no sub-monikers.
2006-05-08 15:42:53 +02:00
Robert Shearman
9e799f2054 ole32: Implement IMarshal for composite monikers. 2006-05-08 15:41:25 +02:00
Robert Shearman
e68e6d7dba ole32: Release all existing monikers before loading the state. 2006-05-08 15:41:13 +02:00
Robert Shearman
785d957eb4 ole32: EnumMonikerImpl_Next should add a reference to the monikers it returns to the caller. 2006-05-08 15:41:04 +02:00
Robert Shearman
3a77ee1d5e ole32: Fix CompositeMonikerImpl_GetSizeMax to match the data written by CompositeMonikerImpl_Save. 2006-05-08 15:40:56 +02:00
Robert Shearman
9c6b67090f ole32: Fix the loop in CompositeMonikerImpl_Hash, as IEnumMoniker_Next
will return S_FALSE when there are no more monikers left to enumerate.
2006-05-08 15:40:43 +02:00
Robert Shearman
2a320dbde8 ole32: Implement CompositeMonikerROTDataImpl_GetComparisonData. 2006-05-08 15:40:31 +02:00
Robert Shearman
996b35f272 ole32: The unknown constant at the start of the persisted data is the number of monikers in the generic composite.
Fix the pointer passed into IEnumMoniker_Release in CompositeMonikerImpl_Save.
2006-05-08 15:40:05 +02:00
Robert Shearman
c8c93e6657 ole32: Add a test for anti monikers. Fix AntiMonikerImpl_Hash and AntiMonikerROTDataImpl_GetComparisonData to pass the tests. 2006-05-08 15:39:47 +02:00
Robert Shearman
caa8b4ed1d ole32: Support marshaling of anti monikers. 2006-05-08 15:39:10 +02:00
Robert Shearman
f7ed725b60 ole32: Register CLSID_CompositeMoniker. 2006-05-08 15:37:27 +02:00
Robert Shearman
7fe211e9b3 ole32: Register CLSIDs for all OLE monikers. 2006-05-08 15:37:06 +02:00
Robert Shearman
68fceb0a70 ole32: Add tests for item moniker. 2006-05-08 15:36:45 +02:00
Robert Shearman
26a3ff33d0 ole32: Make class moniker test more generic and test more properties. 2006-05-08 15:36:40 +02:00
Marcus Meissner
f937f72308 ole32: Fixed typo in debug statement. 2006-05-08 14:46:58 +02:00
Robert Shearman
6814b33aa3 ole32: Remove the fixme printed if CoGetClassObject fails in CoCreateInstance.
Remove the fixme printed if CoGetClassObject fails in
CoCreateInstance, because we already print an error in all cases and
the error more accurately pin-points the source of the problem.
2006-05-07 10:03:11 +02:00
Robert Shearman
32d39ea6ed ole32: IPersistStream is also implemented by any object that implements IStream. 2006-05-05 21:51:52 +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
dd58e54e43 ole32: Add tests for IStorage::Stat. 2006-05-05 21:49:13 +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
Robert Shearman
8d39c80950 ole32: Add more tracing for reading and writing storage streams.
Add more tracing for read and write operations and warn in the case of
failure.
2006-05-05 21:48:49 +02:00
Robert Shearman
168e2fb98f ole32: Add tests for sub-storages and creating streams.
Replace a test that fails on NT and with DCOM95 DLLs with a test that
ensures access permissions are checked correctly for sub-storages and
creating streams.
2006-05-05 21:48:37 +02:00
Robert Shearman
8d30c1d08e ole32: Add a storage test for reading and writing of streams that have
had their parent storage released.
2006-05-05 21:48:27 +02:00