Commit Graph

1375 Commits

Author SHA1 Message Date
Paul Vriens
dae64e67fc ole32/tests: Prevent a crash. 2008-05-30 11:50:04 +02:00
Francois Gouget
315bf2fa45 ole32/tests: Add a trailing '\n' to ok() calls. 2008-05-22 11:42:54 +02:00
Michael Karcher
3d5ea20190 ole32/tests: Test StringFromGUID2. 2008-05-20 15:45:43 +02:00
Michael Karcher
a2880cc61d ole32/tests: Do not call Release if CoCreateInstance failed. 2008-05-20 15:43:54 +02:00
Francois Gouget
42a61d7ed7 Assorted spelling fixes. 2008-05-06 16:10:20 +02:00
Alexandre Julliard
dad21bbcbf makefiles: List the static libraries as normal imports instead of extra libs. 2008-04-30 14:23:55 +02:00
Alexandre Julliard
ef07d83405 Include wine/port.h everywhere we use exceptions. 2008-04-29 20:18:49 +02:00
Rob Shearman
b9f8a81d8c rpcss: When registering a moniker that is already registered in the ROT another ROT entry should still be created and a distinct cookie returned. 2008-04-29 12:35:35 +02:00
Rob Shearman
8580198dc8 ole32: Keep track of the number of weak references to an object.
This is so that an object will only be released when a weak-reference is 
used after the last weak reference has been released (either by 
CoReleaseMarshalData or CoUnmarshalInterface + Release).
2008-04-29 12:35:26 +02:00
Rob Shearman
4cb5c3b7d6 ole32: Add a test for marshaling an object as table-weak and as normal and then unmarshaling and testing that the object is released on the final release. 2008-04-29 12:35:22 +02:00
Rob Shearman
9ebebc0ecc ole32: Add tests for registering a moniker more than once in the ROT and then using it. 2008-04-29 12:35:19 +02:00
Rob Shearman
67a7a8a8ef ole32: Fix two comments about the running object table. 2008-04-28 14:32:33 +02:00
Austin English
c531e2abdb Spelling fixes. 2008-04-23 12:31:07 +02:00
James Hawkins
1edb56cec8 ole32: Fix a few tests that fail in win2k. 2008-04-17 12:51:31 +02:00
Rob Shearman
51158a2f9c ole32: Add tests for clipboard's implementation of IDataObject_GetData. 2008-04-16 14:07:24 +02:00
Rob Shearman
2cd4117f81 ole32: Fix OLEClipbrd_IDataObject_QueryGetData to conform to the tests. 2008-04-16 14:07:19 +02:00
Rob Shearman
e0ef1f061a ole32: Add some tests for OleGetClipboard.
Test the IDataObject_QueryGetData function of the returned object.
2008-04-16 14:07:14 +02:00
Francois Gouget
02bcdf6db7 ole32: Fix spelling of GetComparisonData(). 2008-04-14 12:40:22 +02:00
Rob Shearman
aa83f5a5aa ole32: Use I_RpcExceptionFilter instead of custom exception filter for RPC calls. 2008-04-11 12:13:59 +02:00
Austin English
1b24da3aa0 ole32: Spelling fixes. 2008-04-10 09:51:12 +02:00
Andrew Talbot
c2599478b6 ole32: Assign to structs instead of using CopyMemory. 2008-03-31 12:50:41 +02:00
Reece Dunn
4fbdab7a8f ole32: Added a missing include needed for CLSID_ShellDesktop using MSVC headers. 2008-03-24 21:05:17 +01:00
Rob Shearman
0b168e66f6 ole32: CreatePointerMoniker is implemented. 2008-03-15 10:58:38 +01:00
Andrew Talbot
fd6ae97486 ole32: Assign to structs instead of using memcpy. 2008-03-14 11:21:26 +01:00
Andrew Talbot
e7b0f07c3e ole32: Assign to structs instead of using memcpy. 2008-03-11 12:11:51 +01:00
Andrew Talbot
4971f2f687 ole32: Assign to structs instead of using memcpy. 2008-03-11 12:11:51 +01:00
Huw Davies
60ee0c3eff ole32: Fix CopyTo to work correctly with LARGE_INTEGERs. 2008-03-07 10:52:15 +01:00
Rob Shearman
630e273d17 uuid: Add CLSID_InProcFreeMarshaler.
Remove its initialisation from ole32.
2008-03-06 17:43:19 +01:00
Huw Davies
0aedac346a ole32: Fix CopyTo to work correctly with LARGE_INTEGERs. 2008-03-06 17:39:27 +01:00
Rob Shearman
48000893f9 makefiles: Simplify the use of the IMPORTLIB variable in the DLL makefiles.
Only specify the root to keep platform-specifics out of the individual 
DLL makefiles.
2008-03-04 20:55:01 +01:00
Francois Gouget
29ef0b90ee Assorted spelling, punctuation and case fixes. 2008-03-03 12:04:48 +01:00
James Hawkins
e4c1227ec9 janitorial: Remove links to any microsoft site. 2008-03-01 12:17:17 +01:00
James Hawkins
7b56757cf6 janitorial: Remove links to any microsoft site. 2008-03-01 12:17:13 +01:00
Alexandre Julliard
de61fc5eca ole32: Added a CoGetContextToken stub. 2008-02-26 11:21:54 +01:00
Rob Shearman
9730b285ba ole32: Implement VT_VECTOR|VT_VARIANT in PropVariantCopy. 2008-02-25 19:50:03 +01:00
Rob Shearman
a82f4dd9b7 Don't use GetExceptionCode and GetExceptionInformation in exception filter functions.
When using native compiler exceptions, it isn't valid to use 
GetExceptionCode and GetExceptionInformation anywhere other than in the 
filter or handler blocks since it would be very hard for the compiler to 
work out where to retrieve the exception information from on the stack.

Therefore, remove the WINE_EXCEPTION_FILTER and WINE_FINALLY_FUNC macros 
which enabled GetExceptionCode, GetExceptionInformation and 
AbnormalTermination to be used inside of the functions they declared and 
fix up all callers to access the information directly.
2008-02-16 14:57:44 +01:00
Francois Gouget
4c8e218252 Assorted spelling fixes. 2008-02-15 12:09:24 +01:00
Rob Shearman
96fafe1661 ole32: Fix the character count passed to GetClipboardFormatNameW in WriteFmtUserTypeStg. 2008-02-15 11:04:09 +01:00
Rob Shearman
461ce6e4a2 ole32: Fix potential NULL dereference of qiresults in ClientIdentity_QueryMultipleInterfaces.
This could happen if proxy_manager_get_remunknown returns S_FALSE, so 
fix the check of the return code to match that below.
2008-02-13 16:42:42 +01:00
Rob Shearman
bfa6ddaeb7 ole32: Fix a potentially confusing combination of conditional and bitwise or operators by adding extra brackets. 2008-02-13 16:42:36 +01:00
Rob Shearman
a10cf16449 ole32: Remove an assert that is useless and triggers warnings elsewhere in static analysis tools. 2008-02-13 16:42:30 +01:00
Rob Shearman
e0d25c6394 ole32: Fix local-variable shadowing in apartment_hostobject_thread. 2008-02-13 16:42:23 +01:00
Rob Shearman
14f7a59270 ole32: Fix reference count leak in BindMoniker. 2008-02-13 16:42:18 +01:00
Alexandre Julliard
05c7174909 tests: Add a helper routine to wait for a child process and propagate its result correctly. 2008-02-07 12:56:00 +01:00
Rob Shearman
b7f3ee51b1 ole32: Add pointer moniker implementation. 2008-02-04 13:04:21 +01:00
Rob Shearman
c647bb4691 ole32: Add tests for CreatePointerMoniker. 2008-02-04 13:04:04 +01:00
Rob Shearman
a7234c07c4 ole32: Add a stub implementation of CreatePointerMoniker. 2008-02-04 13:02:35 +01:00
Rob Shearman
ee2250bc44 ole32: Don't get the HRESULT from the buffer if we get an RPC_S_CALL_FAILED status back from the runtime.
The buffer might not contain any data and nowhere in our ole32 code 
passes HRESULTs in the buffer.
2008-01-22 12:00:49 +01:00
Rob Shearman
fcccd9fca6 ole32: Partially implement ServerRpcChannelBuffer_GetDestCtx. 2008-01-15 14:36:29 +01:00
Andrew Talbot
554644fd0d ole32: Remove unneeded casts. 2008-01-15 11:38:08 +01:00
Eric Pouech
528ad9ebbd ole32: Fixed datacache object so that we can retrieve meaningful information. 2008-01-14 13:38:46 +01:00
Rob Shearman
b02b9496d2 ole32: Fix some uses of SEEK_SET when STREAM_SEEK_SET should have been used instead. 2008-01-09 12:25:59 +01:00
Rob Shearman
f2b1a1106b ole32: Fix memory leaks caused by not calling the channel hook function when extension_size is zero.
Instead free the allocated memory outside of the channel hook function.
2008-01-07 22:54:53 +01:00
Rob Shearman
caa9f89a18 ole32: Fix a memory leak. 2008-01-07 22:54:51 +01:00
Rob Shearman
b6553e7e29 ole32: Shortcut the RPC runtime for allocation of the message when processing the COM call by just sending a message to a window in the process. 2008-01-07 22:54:47 +01:00
Rob Shearman
e3e704bc43 ole32: Clear the RPC_FLAGS_VALID_BIT flag from the RPC_MESSAGE ProcNum when shortcutting the RPC runtime. 2008-01-07 22:54:35 +01:00
Rob Shearman
2456f2d43b ole32: Fix a typo in the class moniker tests. 2008-01-07 12:31:42 +01:00
Rob Shearman
9645f9d19d ole32: get_moniker_for_progid_display_name should fallback to using IClassFactory to get IParseDisplayName if getting it directly fails. 2008-01-07 12:31:38 +01:00
Rob Shearman
cf8da82ad3 ole32: Clear the RPC_MESSAGE structure before using it.
The RPC runtime could use some of the parameters, expecting them to be 
initialised.
2008-01-07 12:04:15 +01:00
Rob Shearman
d84f0abb70 ole32: Determine the destination for the COM call and initialise the necessary parameters in ClientRpcChannelBuffer_GetBuffer instead of ClientRpcChannelBuffer_SendReceive.
The parameters are then freed in the matching 
ClientRpcChannelBuffer_FreeBuffer function.
2008-01-07 12:03:03 +01:00
Gerald Pfeifer
76e7cc9423 ole32: Remove one noop check in CoWaitForMultipleHandles(). 2008-01-02 12:38:42 +01:00
Jacek Caban
2c6cbea080 ole32: Fixed parameter checking and improved debug traces in IBindCtx::QueryInterface. 2007-12-31 16:49:44 +01:00
Rob Shearman
9804aba758 rpcss: Use context handles to automatically free running object table entries if the client process quits without calling IrotRevoke. 2007-12-26 13:27:42 +01:00
Alexander Dorofeyev
188ef4e4f9 ole32: Fix wrong timeout check. 2007-12-24 13:30:56 +01:00
Michael Jung
6598589ebd ole32: Avoid leaving a critical section twice. 2007-12-21 13:13:10 +01:00
Rob Shearman
93df1675f1 ole32: Fix RPC_GetLocalClassObject to wait for 30 seconds, even if messages arrive while we are waiting. 2007-12-20 12:10:35 +01:00
Lei Zhang
d5e78c84c7 ole32: Print a fixme when an aggregation attempt fails. 2007-12-14 12:25:14 +01:00
Andrew Riedi
19888da21d ole32: DPRINTF -> TRACE. 2007-12-12 13:48:54 +01:00
Rob Shearman
7ac980b1e7 ole32: Process messages while waiting for a local server to create a pipe. 2007-12-07 18:49:23 +01:00
Rob Shearman
34ab21d11e ole32: Register the window used in the marshal tests only once.
Destroy the windows that have been created when they are no longer needed.
2007-12-07 16:34:48 +01:00
Rob Shearman
3328ad6eb9 ole32: Initialise object variable in RunningObjectTableImpl_GetObject.
As per the rules for memory in RPC, the memory pointer to by object will 
be used during unmarshalling and previously it was uninitialised.
(Thanks to Dan Kegel and his Valgrind runs for reporting this.)
2007-12-06 12:06:56 +01:00
Rob Shearman
b711d35d40 ole32: Fix the test of the size returned from WdtpInterfacePointer_UserSize.
It varies on different versions of Windows, so we shouldn't test it for 
an exact value.
2007-12-04 13:32:45 +01:00
Rob Shearman
31b2d81ea0 ole32: Ignore the threading model of the PSFactoryBuffer object created during standard marshaling.
This is so that we don't try to host it.
2007-12-03 11:55:00 +01:00
Rob Shearman
f65e04770d ole32: Always create a window for the main apartment. 2007-12-03 11:54:16 +01:00
Rob Shearman
5c53b52c5a ole32: Fix a test in the WdtpInterfacePointer tests. 2007-11-29 13:35:14 +01:00
Rob Shearman
95b6167244 ole32: Fix description of what is being test in ok calls in the WdtpInterfacePointer tests. 2007-11-29 13:35:10 +01:00
Rob Shearman
c111c2d685 ole32: Add tests for WdtpInterfacePointer_* functions.
Add stubs for these so that the tests link.
2007-11-27 11:40:19 +01:00
Rob Shearman
ddf59f50f7 ole32: Clean up properly in ClientRpcChannelBuffer_SendReceive in the case where PostMessageW fails. 2007-11-27 11:40:12 +01:00
Rob Shearman
6262230a4b ole32: Store the dispatch parameters in the message state structure to allow them to be initialised earlier in the sequence of IRpcChannelBuffer calls. 2007-11-27 11:40:07 +01:00
Rob Shearman
6f917d49c1 ole32: Fix a race in find_proxy_manager. 2007-11-26 12:26:46 +01:00
Rob Shearman
33abd94d35 ole32: Intialise some out parameters in ProxyCliSec_QueryBlanket. 2007-11-15 11:09:22 +01:00
Rob Shearman
2fd5acedb7 ole32: Release the correct pointer in test_MkParseDisplayName.
Reported by Dan Kegel.
2007-11-13 23:28:05 +01:00
Rob Shearman
5d2f802359 ole32: Validate the parameters to DataCache_Cache. 2007-11-13 23:28:05 +01:00
Rob Shearman
56a624b0fe ole32: Wait forever on the ready_event in the local server tests. 2007-11-13 13:33:17 +01:00
Rob Shearman
24723913e0 ole32: Use asynchronous I/O for the named pipe server for local servers. 2007-11-13 13:31:15 +01:00
Rob Shearman
da04018608 ole32: Fix the condition in HMETAFILEPICT_UserFree to match that in METAFILEPICT_UserMarshal.
Actually free the memory.
2007-11-13 13:29:53 +01:00
Rob Shearman
8ee930150c ole32: Fix a memory leak in the HGLOBAL stream tests by telling CreateStreamOnHGlobal to free the memory it allocates, as we don't free it ourselves in this test. 2007-11-13 13:29:47 +01:00
Rob Shearman
d881005c4f ole32: Release the stream in COM_RevokeRegisteredClassObject. 2007-11-13 13:29:38 +01:00
Rob Shearman
4edca3cf4d ole32: Fail before constructing an object in CreateStreamOnHGlobal to avoid a memory leak. 2007-11-13 13:29:30 +01:00
Rob Shearman
2779099319 ole32: Disconnect the IRemUnknown stub buffer before destroying it to release the reference on the IRemUnknown object. 2007-11-12 12:53:59 +01:00
Rob Shearman
433639f783 ole32: Free the memory associated with the open DLL list on unloading of ole32. 2007-11-12 11:46:23 +01:00
Rob Shearman
1dc91c41a7 ole32: Initialise data_cf in DataCacheEntry's to zero to indicate no data present on creation. 2007-11-12 11:46:15 +01:00
Rob Shearman
dd527a7d2c ole32: Fix a leak of a moniker object in test_default_handler. 2007-11-12 11:46:11 +01:00
Rob Shearman
8f6218a7c8 ole32: Fix a memory leak in DataCacheEntry_Save. 2007-11-12 11:46:06 +01:00
Rob Shearman
5885be4e11 ole32: Fix a memory leak of moniker in RunningObjectTableImpl_Register. 2007-11-12 11:46:02 +01:00
Rob Shearman
3bd222004e ole32: Fix a leak of the IBindCtx object in FileMonikerImpl_IsEqual. 2007-11-12 11:45:57 +01:00
Rob Shearman
2249565eb7 ole32: Fix a memory leak in get_moniker_comparison_data. 2007-11-12 11:45:53 +01:00
Rob Shearman
2c1ba188d6 ole32: Store the InterfaceList object in the IEnumMoniker object.
This is because the IEnumMoniker object is supposed to free the memory 
passed to it, but the array of InterfaceData pointers is inside the 
InterfaceList memory block.
2007-11-12 11:45:49 +01:00
Rob Shearman
e8b9a427be ole32: Add a missing IMoniker_Release to test_MkParseDisplayName. 2007-11-12 11:45:38 +01:00
Rob Shearman
a7bfdde975 ole32: Fix memory leak in ItemMonikerImpl_Save. 2007-11-12 11:45:34 +01:00