Commit Graph

289 Commits

Author SHA1 Message Date
Rob Shearman 600143d4fa ole32: Create host apartments to enable isolation of objects of incompatible threading models.
There should be one host apartment per apartment. Existing apartments 
should not be re-used, except in the case of the main apartment.
2007-05-18 14:42:37 +02:00
Paul Vriens 0eeb5727b2 ole32/tests: Check for correct return value. 2007-05-14 16:45:17 +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
Rob Shearman 71ada5c654 ole32: Add a test for the retrieved local class object in another thread being a proxy. 2007-05-08 13:24:07 +02:00
Rob Shearman 7d7f9a59d0 ole32: Fix CoRevokeClassObject to return RPC_E_WRONG_THREAD if it was called from a different apartment than the one that called CoRegisterClassObject. 2007-05-08 13:23:51 +02:00
Rob Shearman 51f85a765b ole32: COM_GetRegisteredClassObject should only retrieve objects that were registered in the current apartment. 2007-05-08 13:23:30 +02:00
Rob Shearman e93c82e643 ole32: Add tests for in-process registered class objects not being visible from different apartments. 2007-05-08 13:23:01 +02:00
Rob Shearman 4cbca9ac3a ole32: Add test for registered class becoming invalid when apartment is destroyed. 2007-05-08 13:22:26 +02:00
Rob Shearman 1360357f92 ole32: Fix a hack which depended on the IID of the interface being marshaled
to determine whether we were marshaling the remote unknown for the
apartment or not.
2007-04-06 12:31:04 +02:00
Rob Shearman 63ea015c65 ole32: Don't release the registered drop targets in OleUninitialize.
Do it in DLL_PROCESS_DETACH instead.
2007-04-05 13:25:18 +02:00
Rob Shearman 47432cba45 ole32: Check the input hwnd is valid in RevokeDragDrop. 2007-04-05 13:25:05 +02:00
Rob Shearman 2d8ae2cf83 ole32: Check for COM not being initialised and an invalid window handle being input to RegisterDragDrop. 2007-04-05 13:24:54 +02:00
Rob Shearman db4972f1fb ole32: Add tests for drag and drop functions. 2007-04-05 13:23:59 +02:00
Rob Shearman ab7f796fcb ole32: Keep a list of the loaded dlls for each apartment.
Use it to make CoFreeUnusedLibraries per-apartment.
2007-04-04 21:28:36 +02:00
Rob Shearman 1d8879bccc ole32: Add a test that shows CoFreeUnusedLibraries only frees unused libraries from the current apartment. 2007-04-04 21:27:12 +02:00
Francois Gouget a8695bae88 ole32/tests: Spelling fix. 2007-04-03 11:22:57 +02:00
Francois Gouget f4f4eb24c8 ole32/tests: Spelling fix. 2007-04-03 11:22:52 +02:00
Francois Gouget d9e8a0f63e Remove unneeded checks on the GetModuleHandle() return value for cases where we are linked with the dll. 2007-03-28 12:36:13 +02:00
Rob Shearman f8789122aa ole32: Implement MkParseDisplayName. 2007-03-28 12:12:49 +02:00
Rob Shearman 87a4516bd9 ole32: Add some more tests for MkParseDisplayName. 2007-03-28 12:11:15 +02:00
Rob Shearman 32dc398976 ole32: Display the testname for the test for display name in test_moniker. 2007-03-28 12:11:07 +02:00
Rob Shearman 4ce58cb531 ole32: Do a case-insensitive comparison in the count_moniker_matches in the moniker tests as Win9x marshals an all upper-case file name for file monikers. 2007-03-28 12:11:00 +02:00
Rob Shearman 1f70fc50c6 ole32: Add tests for the standard marshaler's implementation of IClientSecurity. 2007-03-28 12:10:51 +02:00
Rob Shearman d6a435fc56 ole32: Pass the OXID info to RPC_CreateClientChannel and use this to pass the server process ID to channel hooks. 2007-03-28 12:10:40 +02:00
Rob Shearman 061a29ee44 ole32: Add a stubbed out implementation of IClientSecurity to the proxy manager. 2007-03-27 12:39:25 +02:00
Rob Shearman 36d5515d91 ole32: Add a test for StgStreamImpl_SetSize with a non-zero HighPart for the size. 2007-03-20 13:00:04 +01:00
Rob Shearman f0189b8789 ole32: Implement CoAddRefServerProcess and CoReleaseServerProcess. 2007-03-09 21:17:47 +01:00
Rob Shearman 15a0b7fad5 ole32: Don't keep the local server named pipe open for a single-use object. 2007-03-09 21:16:44 +01:00
Rob Shearman 7ba4b81675 ole32: Add some tests for the flags input to CoRegisterClassObject. 2007-03-09 21:16:41 +01:00
Rob Shearman 2a021b50d4 ole32: Enable local server test and make it work with Win9x COM implementation. 2007-03-09 21:16:34 +01:00
Rob Shearman c4727fde17 ole32: Fix return codes returned by IBindCtx::RegisterObjectBound and IBindCtx::RevokeObjectBound when used on NULL objects. 2007-03-09 11:46:42 +01:00
Rob Shearman ba3ceaa4b8 ole32: Fix cbStruct handling in IBindCtx:GetBindOptions. 2007-03-09 11:46:38 +01:00
Rob Shearman e14e464df6 ole32: Add more tests of IBindCtx functions.
Add tests for IBindCtx::GetObjectParam, IBindCtx::RevokeObjectParam and 
IBindCtx::RevokeObjectBound.
2007-03-09 11:46:33 +01:00
Rob Shearman 3d6070aebd ole32: Set output param to NULL in BindCtxImpl_EnumObjectParam. 2007-03-08 13:50:33 +01:00
Rob Shearman bdefb46d29 ole32: Fix BindCtxImpl_GetBindOptions to return the correct locale and to not fail if the input size is too large. 2007-03-08 13:50:27 +01:00
Rob Shearman bf4b5188e0 ole32: CreateBindCtx should fail if reserved parameter is not zero. 2007-03-08 13:50:23 +01:00
Rob Shearman a418777708 ole32: Add some tests for IBindCtx. 2007-03-06 22:25:45 +01:00
Rob Shearman c19076cb19 ole32: Remove some unnecessary traces from the HeapUnknown implementation. 2007-03-06 22:17:54 +01:00
Rob Shearman 7a6a63f8fc ole32: Fix a failing CoUnmarshalInterface test on Windows. 2007-03-06 22:17:45 +01:00
Rob Shearman ac8d035f3d ole32: Fix a use-after-free of the file moniker in the running object table tests. 2007-03-06 22:17:43 +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 0101f89a8d ole32: Add tests for default handler creation and handler marshaling. 2007-02-26 13:38:45 +01:00
Mike McCormack 4c46194cf5 ole32: Add a few more tests for transacted storage. 2007-02-06 13:20:37 +01:00
Paul Vriens e89cac747c ole32/tests: Cast-qual warning fixes. 2007-01-24 11:59:11 +01:00
Paul Vriens 3d2baaa6cf ole32/tests: Cast-qual warnings fixes. 2007-01-12 11:25:45 +01:00
Rob Shearman d35a81c7aa ole32: Fix copied description and copyright statement for tests/errorinfo.c. 2007-01-12 11:24:14 +01:00
Rob Shearman bbedf3d096 ole32: Add tests for the default handler. 2007-01-11 11:50:03 +01:00
Rob Shearman 5c71583b53 ole32: Add tests for error info functions.
Return E_INVALIDARG if dwReserved is not set to zero for both
GetErrorInfo and SetErrorInfo.
2007-01-11 11:49:59 +01:00
Rob Shearman fa64950ee1 ole32: Add a test for the failure case of same-apartment unmarshaling when passing in an unsupported iid. 2007-01-10 12:21:59 +01:00
Rob Shearman 49fc8ac742 ole32: Add tests for passing invalid arguments to CoUnmarshalInterface. 2007-01-10 12:21:53 +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 de527d5ec0 ole32: Add tests for invalid arguments of CoMarshalInterface and CoMarshalInterThreadInterfaceInStream. 2007-01-10 12:16:08 +01:00
Rob Shearman fd07191673 ole32: Fix HGLOBALStreamImpl_CopyTo to check the return values of IStream_Read and IStream_Write and to not compare the bytes read to the bytes written.
Add tests for IStream::CopyTo of the HGLOBAL stream implementation.
2007-01-10 12:13:22 +01:00
Rob Shearman d02b27c0e9 ole32: Move test for CoGetInterfaceAndReleaseStream to compobj.c. 2007-01-10 12:02:37 +01:00
Rob Shearman c21f5c7c6a ole32: Move the Running Object Table test in marshal.c to moniker.c to put it with the other ROT tests. 2007-01-10 12:02:28 +01:00
Paul Vriens 32fbfea47a ole32/tests: Cast-qual warnings fixes. 2007-01-09 12:01:45 +01:00
Rob Shearman b624e8125c ole32: Fix the OLE clipboard test to call OleInitialize before performing the tests to fix test failures on Windows. 2007-01-08 12:35:44 +01:00
Rob Shearman 0c51b6236c ole32: Release the global interface table in the tests when it is no longer needed. 2007-01-08 12:35:34 +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
Rob Shearman 638182bbba ole32: Add tests for channel hooks. 2006-12-29 21:25:49 +01:00
Rob Shearman 2881f919c7 ole32: Add some tests for the running object table.
The tests show the behaviour when the IROTData interface is not
available from the moniker. They also show the flags that are accepted
into IRunningObjectTable::Register.
2006-12-28 12:36:07 +01:00
Rob Shearman 3e8adc3d26 ole32: Output the HRESULT for clipboard tests that fail. 2006-12-28 12:17:07 +01:00
Rob Shearman 3be9cbc41a ole32: Message filters aren't used in the test_call_from_message test, so remove the call to CoRegisterMessageFilter. 2006-12-27 13:02:48 +01:00
Rob Shearman 844037ab01 ole32: Performing a COM call from within the processing of a sent message during a wait for completion of another COM call is not allowed.
Add a test for the behaviour where RPC_E_CANTCALLOUT_ININPUTSYNCCALL is returned.
2006-12-24 13:08:02 +01:00
Rob Shearman 4fa03831a5 ole32: Reset the message filter at the end of the message filter test. 2006-12-20 12:40:46 +01:00
Rob Shearman 9208eef55c ole32: Call the message filter for incoming calls. 2006-12-20 12:40:30 +01:00
Rob Shearman 307ab51793 ole32: Fix the HMETAFILEPICT user marshaling test to use the size
derived from the return value of HMETAFILEPICT_UserMarshal instead of
the value returned by HMETAFILEPICT_UserSize, as the latter
over-estimates the size on Windows.

Remove some unnecessary casts.
2006-12-19 17:00:02 +01:00
Rob Shearman fb883d8687 ole32: Fix SetSize for HGLOBAL streams in the case of being out-of-memory. 2006-12-18 11:54:24 +01:00
Rob Shearman fda6498284 ole32: Implement HMETAFILE and HMETAFILEPICT user marshaling functions and add tests for these. 2006-12-18 11:52:58 +01:00
Rob Shearman 3bb4760f88 ole32: Move the user marshal tests to usrmarshal.c. 2006-12-18 11:52:42 +01:00
Francois Gouget 458ebf423d ole32/tests: Replace some '#if 0's with 'if (0)'s.
Fix the code so it compiles.
2006-12-14 20:24:53 +01:00
Francois Gouget 5e10172b30 ole32: Fix named/nameless union compilation error. 2006-12-14 12:44:31 +01:00
Marcus Meissner f0280cbd1e made functions and variables static in some testcases. 2006-12-11 12:18:29 +01:00
Rob Shearman 1b244baf48 ole32: Fix HandsOffStorage in the data cache. 2006-12-04 20:19:03 +01:00
Rob Shearman 6235ac9f58 ole32: Implement the DiscardCache function in the data cache. 2006-12-04 20:18:56 +01:00
Rob Shearman e99168e1ba ole32: Add tests for invalid clipformat/tymed combinations in IOleCache:Cache and for caching formats with a clipformat of 0. 2006-12-04 13:51:11 +01:00
Rob Shearman 587ba29174 ole32: Implement saving of the data cache.
Document a few of the unknown fields in the presentation data header.
2006-12-04 12:21:20 +01:00
Rob Shearman e5c82d3aa4 ole32: Add handling of the dirty state to the data cache and fix InitNew to not call Load. 2006-12-04 12:21:09 +01:00
Rob Shearman 188fe95091 ole32: Add some tests for the IViewObject, IOleCache2 and IPersistStorage interfaces of the OLE data cache. 2006-12-04 12:20:51 +01:00
Huw Davies 1f34fdffee ole32: CoGetInterfaceAndReleaseStream shouldn't crash when passed a NULL stream. 2006-11-22 11:38:57 +01:00
Huw Davies 241336c749 ole32: CoRegisterMessageFilter shouldn't crash on an uninitialized apartment. 2006-11-16 22:09:24 +01:00
Francois Gouget 49ad2b10c1 ole32/tests: Don't use the NONAMELESS* macros in the tests. 2006-11-13 12:59:11 +01:00
Eric Pouech 3026d8844c ole32: Don't use PropVariantClear to setup an unitialized variant. 2006-11-09 12:24:46 +01:00
Michael Stefaniuc 22befac97e ole32: Fix the warnings introduced by the "unsigned long" to "ULONG" header changes. 2006-11-09 10:43:38 +01:00
Rob Shearman e1ee3b4de3 ole32: Fix some memory leaks in the marshal tests. 2006-10-23 15:18:05 +02:00
Francois Gouget 22288de732 Fix compilation with gcc 2.95. 2006-10-19 13:35:19 +02:00
Francois Gouget ef998ea6cb Assorted spelling fixes. 2006-10-16 11:33:38 +02:00
Michael Stefaniuc 15765dd953 The Data1 member of the GUID struct needs to be an unsigned int too for Win64 compatibility. 2006-10-16 10:53:04 +02:00
Michael Ploujnikov 9d2a804f9b ole32/tests: Win64 printf format warning fixes. 2006-10-14 20:17:16 +02:00
Jacek Caban 2abe8348fa ole32: Don't fail in OleCreate if created object doesn't implement IRunnableObject or IOleChache. 2006-10-09 12:43:57 +02:00
Francois Gouget 38520a819c Assorted spelling fixes. 2006-10-03 15:56:21 +02:00
Francois Gouget d0b322b00f ole32: Fix invalid macro usage. 2006-09-29 17:53:01 +02:00
Francois Gouget 87045eb0c5 Fix rpcndr.h so it takes CONST_VTABLE into account.
Define CONST_VTABLE in the tests that need it. This fixes many Visual C++ warnings.
2006-09-29 17:52:27 +02:00
Michael Stefaniuc 85ce5117c5 Add a WINE_NO_LONG_INT define to many makefiles to ease the transition of DWORD/LONG/ULONG from long to int. 2006-09-29 16:08:30 +02:00
Andrey Turkin 63f88b3d57 ole32: StgOpenStorage on non-existent file should create it (with test). 2006-09-28 14:14:59 +02:00
Alexandre Julliard 335144dc04 ole32/tests: Avoid using sizeof in a trace. 2006-09-27 20:54:05 +02:00
Alexandre Julliard 32ab895e46 makefiles: Generate the dependencies line to avoid some code duplication. 2006-09-14 09:38:16 +02:00
Robert Shearman bfc1bdc3bb ole32: Fix the IStream_SetSize function for HGLOBAL streams to ignore HighPart. 2006-09-11 12:27:15 +02:00
Robert Shearman 83f13d6b99 ole32: Make an ok message match the name of the function it is testing. 2006-09-11 12:27:07 +02:00
Robert Shearman 355903ddc4 ole32: Fix the return value of the HGLOBAL stream IStream_LockRegion function. 2006-09-11 12:27:04 +02:00