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
038c8e642a
ole32: Call the MessagePending function for message filters.
2006-12-24 13:07:38 +01:00
Rob Shearman
aca17cd120
ole32: Track the pending call count so that the correct call type can be passed to the message filter HandleInComingCall function.
2006-12-24 13:07:35 +01:00
Rob Shearman
d3217872b3
ole32: Allow the marshaling/unmarshaling of NULL interfaces for IClassFactory.
2006-12-24 13:07:32 +01:00
Rob Shearman
e236edb91e
ole32: Send a causality ID in the ORPCTHIS header for a call.
...
Use the causality ID to determine whether this is a top-level or a
nested (called-back) call for the purposes of IMessageFilter::HandleInComingCall.
2006-12-20 12:41:01 +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
a089e57983
ole32: Pass in the IID and IUnknown* of the object being executed to the server notification and message filter functions.
2006-12-20 12:40:38 +01:00
Rob Shearman
9208eef55c
ole32: Call the message filter for incoming calls.
2006-12-20 12:40:30 +01:00
Rob Shearman
c0a25d3565
ole32: Call ServerNotify for channel hooks.
...
Store the SChannelHookCallInfo structure in the message state.
2006-12-20 12:40:03 +01:00
Rob Shearman
5788ee9f05
ole32: Implement CoRegisterChannelHook and call channel hook methods on the client side.
2006-12-20 12:39:50 +01:00
Rob Shearman
1dc5dec6e6
ole32: Marshal the ORPCTHIS structure prefixed to the client data when doing ORPC calls.
...
This is done by putting the ORPCTHIS data into the buffer when calling
IRpcChannelBuffer::GetBuffer on the client side and then storing the
amount we increased the buffer in a structure stored in the Handle
field. This is done to present the correct Buffer pointer to the proxy
so that it writes its data after the ORPCTHIS data.
Unmarshal the data on the server side (during RPC_ExecuteCall) and make
sure the data is consistent according to NDR rules. Also add several
checks on the unmarshaled data that are specified by the DCOM draft
specification.
2006-12-20 12:36:43 +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
Rob Shearman
4babec1928
ole32: Add documentation for the user marshaling functions.
2006-12-18 11:45:46 +01:00
Rob Shearman
cc30255c8a
ole32: Support reading and writing custom clipformats in the data cache.
2006-12-18 11:45: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
7a5766346f
ole32: Add some documentation for CoCreateInstance.
2006-12-07 11:51:13 +01:00
Francois Gouget
dd6e948d84
ole32: Convert dump_user_flags() into debugstr_user_flags(), a proper debug trace function.
2006-12-06 12:15:11 +01:00
Francois Gouget
f0ccd389d4
ole32: Convert dump_FORMATETC() into debugstr_formatetc(), a proper debug trace function.
2006-12-06 12:14:55 +01:00
Francois Gouget
bb8e625b5b
Assorted spelling fixes.
2006-12-05 10:31:47 +01:00
Rob Shearman
878d5e9cec
ole32: Implement the GetData function of the data cache to using the
...
existing LoadData function and fix GetData to also return data that
has been set, rather than loaded.
2006-12-04 20:19:28 +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
feee099eec
ole32: Add some more traces to the data cache to make debugging easier.
2006-12-04 13:51:15 +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
ca81b825be
ole32: In the data cache, fmtetc->cfFormat and fmtetc->tymed can be 0 which means to match any clipformat/tymed.
...
Therefore, keep the clipformat of the data in the data_cf field.
Return an error from SetData if a non-zero clipformat hasn't been specified.
Write out stgmedium.tymed instead of fmtetc.tymed, which is guaranteed
to be non-zero if data has been set.
2006-12-04 13:51:06 +01:00
Rob Shearman
d37b669503
ole32: Check that the specified clipboard format and tymed are valid in IOleCache::Cache in the data cache.
2006-12-04 13:44:06 +01:00
Rob Shearman
3b87fe97df
ole32: Set the mapping mode to anisotropic in OleMetafilePictFromIconAndLabel.
2006-12-04 12:22:09 +01:00
Rob Shearman
d7d3309e0a
ole32: The width of the metafile drawn should be 3 times the icon width in OleMetafilePictFromIconAndLabel.
2006-12-04 12:22:03 +01:00
Rob Shearman
cdb86c6c90
ole32: Fill in the xExt and yExt fields in OleMetafilePictFromIconAndLabel.
2006-12-04 12:21:55 +01:00
Rob Shearman
2fa7cadf07
ole32: Use the default icon title font when writing the caption text out in OleMetafilePictFromIconAndLabel.
2006-12-04 12:21:48 +01:00
Rob Shearman
f0e2ea54e0
ole32: The METAFILEPICT created by OleMetafilePictFromIconAndLabel should have its mapping mode be anisotropic, not isotropic.
2006-12-04 12:21:38 +01:00
Rob Shearman
09376ea1f5
ole32: Call SetWindowOrgEx and SetWindowExtEx in OleMetafilePictFromIconAndLabel so that the created metafile scales correctly.
...
Centre the icon and the label.
2006-12-04 12:21:31 +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
e9cc0744cc
ole32: Add documentation for CreateDataCache.
2006-12-04 12:20:57 +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
Rob Shearman
4b7e8e73a4
ole32: The advise sink for the data cache should be primed with the passed in aspects value, not an arbitrarily selected value.
2006-12-04 12:20:41 +01:00
Rob Shearman
46f70207b2
ole32: Implement the SetData function for the data cache.
2006-12-04 12:20:36 +01:00
Rob Shearman
25d7d95035
ole32: Load cached data in the data cache into a STGMEDIUM type so it can be treated the same as set data.
2006-12-04 12:20:28 +01:00
Rob Shearman
4232d31c57
ole32: Implement Cache and Uncache for the data cache.
2006-12-04 12:20:18 +01:00
Rob Shearman
07e3d538a0
ole32: Create a cache entry for each format in the data cache to allow
...
for the future possiblity to add entries with IOleCache::Cache and
IOleCache::SetData.
2006-12-04 12:20:07 +01:00
Rob Shearman
a2d59ef534
ole32: Implement DataCache_GetClassID.
2006-12-04 12:19:31 +01:00
Dmitry Timoshkov
09fea0f83e
ole32: Make some data const.
2006-11-28 12:36:17 +01:00
Kirill K. Smirnov
3cd3ca68fe
ole32: Fix logic in Storage32Impl_SmallBlocksToBigBlocks function.
2006-11-27 17:44:47 +01:00
Huw Davies
8519a6c49e
ole32: Spelling fixes.
2006-11-22 11:39:03 +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
Rob Shearman
fff2d8e82b
ole32: Re-enable the code that unregisters interfaces with the RPC runtime.
2006-11-13 14:32:45 +01:00
Francois Gouget
1ccf944900
Assorted spelling fixes.
2006-11-13 13:01:53 +01:00
Francois Gouget
aa857dead3
ole32: Standardize some documentation comments.
2006-11-13 13:01:08 +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
Michael Stefaniuc
cc234847d0
widl: Use ULONG instead of unsigned long when generating declarations for *_UserFree() functions. This is needed for Win64 compatibility.
2006-11-09 10:43:23 +01:00
Michael Stefaniuc
6f95047034
widl: Use ULONG instead of unsigned long when generating declarations for *_UserUnMarshal() functions. This is needed for Win64 compatibility.
2006-11-09 10:43:20 +01:00
Michael Stefaniuc
05b1aac100
widl: Use ULONG instead of unsigned long when generating declarations for *_UserMarshal() functions. This is needed for Win64 compatibility.
2006-11-09 10:43:16 +01:00
Michael Stefaniuc
177aaf6738
widl: Use ULONG instead of unsigned long when generating declarations for *_UserSize() functions. This is needed for Win64 compatibility.
2006-11-09 10:43:12 +01:00
Francois Gouget
30e44c85c8
Assorted spelling fixes.
2006-11-07 15:25:24 +01:00
Andrew Talbot
97ee9c7820
ole32: Cast-qual warnings fix.
2006-11-07 15:06:30 +01:00
Rob Shearman
b1bfad067b
ole32: Fix a memory leak on the error path of dispatch_rpc.
2006-10-27 11:59:58 +02:00
Rob Shearman
93dfdf7a3f
ole32: Fix some memory leaks in the class factory proxy.
2006-10-27 11:59:40 +02:00
Rob Shearman
7cbafd4f74
ole32: Always call IRpcChannelBuffer_GetBuffer in the class factory stub.
2006-10-27 11:59:34 +02:00
Eric Pouech
a79fa50280
ole32: Fixed some wrong conditions in OleFlushClipboard.
2006-10-24 11:32:48 +02:00
Eric Pouech
5c0f35a2aa
ole32: CoUninitialize: No longer access an object after it's been freed.
2006-10-24 11:32:38 +02:00
Rob Shearman
e1ee3b4de3
ole32: Fix some memory leaks in the marshal tests.
2006-10-23 15:18:05 +02:00
Alexandre Julliard
b0ea577ae5
Avoid usage of sizeof in traces that causes warnings on MacOSX.
2006-10-20 12:16:45 +02:00
Francois Gouget
22288de732
Fix compilation with gcc 2.95.
2006-10-19 13:35:19 +02:00
Alexandre Julliard
12c196203c
Make.rules: Added support for building IDL client/proxy/server/iid files.
2006-10-16 17:20:37 +02:00
Francois Gouget
ef998ea6cb
Assorted spelling fixes.
2006-10-16 11:33:38 +02:00
Michael Stefaniuc
21ff87bf50
ole32: Win64 printf format warning fixes.
2006-10-16 10:53:28 +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
Jeff Latimer
6a355aec1b
ole32: Remove dead code in errorinfo.c (Coverity).
2006-10-14 20:38:20 +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
Huw Davies
fead72e8a7
ole32: Don't return from CoRegisterClassObject until we have created the named pipe.
...
Also don't fail if the client connects to the pipe between CreateNamedPipe and ConnectNamedPipe.
2006-09-28 11:56:08 +02:00
Robert Shearman
3721bf60bb
ole32: Check the return value of IStream_SetSize so as to not blindly continue on and possibly corrupt the structured storage file.
2006-09-28 11:55:56 +02:00
Alexandre Julliard
335144dc04
ole32/tests: Avoid using sizeof in a trace.
2006-09-27 20:54:05 +02:00
Andrew Talbot
c9f9797890
ole32: Cast-qual warnings fix.
2006-09-21 11:16:42 +02:00
Alexandre Julliard
32ab895e46
makefiles: Generate the dependencies line to avoid some code duplication.
2006-09-14 09:38:16 +02:00
Gerald Pfeifer
24dc347134
ole32: Silence a compiler warning about unused variable in StgStreamImpl_Write().
2006-09-13 11:01:53 +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
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
Robert Shearman
a552c2ead7
ole32: Fix the HGLOBAL stream IStream_Read function to return S_OK even if not all of the requested bytes were available.
2006-09-11 12:26:58 +02:00
Robert Shearman
e10103e3ec
ole32: Add tests for the stream object returned by CreateStreamOnHGlobal.
2006-09-11 12:25:01 +02:00
Francois Gouget
06f9532dda
Assorted spelling fixes.
2006-09-08 11:04:53 +02:00
Francois Gouget
19be7545e5
ole32: Fix spelling of a couple of local variables.
2006-09-08 11:03:07 +02:00