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
Mike McCormack
3c1e67d084
ole32: Return STG_E_REVERTED when a stream's parent storage has been closed.
2006-05-05 20:54:57 +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
a8494aa9a9
ole32: Store drop targets in a standard list.
2006-05-05 16:33:12 +02:00
Mike McCormack
11e4b21a30
ole32: More tests and fixes for STGM_PRIORITY.
2006-04-18 11:15:03 +02:00
Mike McCormack
d7424771ea
ole32: Fix a declaration.
2006-04-18 11:14:58 +02:00
Mike McCormack
64659785de
ole32: Uncomment some code to make sure it is compiled, but don't run it.
2006-04-18 11:14:53 +02:00
Robert Shearman
bff74c1763
ole32: Fix typo in FileMonikerImpl_BindToObject.
...
Fix apparent typo in FileMonikerImpl_BindToObject, where ppf was
incorrectly passed into IClassFactory_CreateInstance instead of &ppf
(found by Coverity).
2006-04-07 13:10:18 +02:00
Robert Shearman
3a2e18c99c
ole32: Check for pcbSize parameter of CompositeMonikerImpl_GetSizeMax being NULL, rather than non-NULL.
2006-04-07 13:10:03 +02:00
Robert Shearman
ff5efc2779
ole32: Check for pcbSize in AntiMonikerImpl_GetSizeMax being for NULL, not for non-NULL.
2006-04-07 13:09:57 +02:00
Robert Shearman
582e2f1ff8
ole32: Fix DefaultHandler_EnumAdvises.
...
As per MSDN, if the object has no connections then
IOleObject::EnumAdvises should return a NULL enumerator and S_OK. This
is the case when This->oleAdviseHolder is NULL, so do this and avert a
potential NULL dereference of This->oleAdviseHolder (found by
Coverity).
2006-04-07 13:09:36 +02:00
Robert Shearman
c77711a6c9
ole32: Add documentation for the clip format user marshal functions.
2006-04-03 21:36:12 +02:00
Mike McCormack
eed120995b
ole32: STGM_PRIORITY implies STGM_SHARE_EXCLUSIVE.
2006-04-03 12:15:34 +02:00
Robert Shearman
714b66e945
ole: Use ncalrpc instead of ncacn_np as the RPC transport.
...
Use ncalrpc instead of ncacn_np as the transport as this is more similar
to how ole32 from NT works and should also be compatible with rpcrt4
from Win9x, allowing more combinations of dlls to work.
2006-03-31 17:38:43 +02:00
Robert Shearman
fb5ec209cd
ole32: Remove unnecessary commenting out of the RPC interfaces in the dcom idl file.
2006-03-30 21:55:43 +02:00
Robert Shearman
8c7706bad0
ole32: Don't process posted messages in CoWaitForMultipleHandles.
...
Tests with native show that during COM calls posted messages aren't
retrieved other than COM calls so change the PeekMessage parameters in
CoWaitForMultipleHandles to duplicate this.
2006-03-30 12:43:17 +02:00
Robert Shearman
ff85f892c6
ole32: Try to retrieve messages that are COM calls first.
...
Try to retrieve messages that are COM calls first in
CoWaitForMultipleHandles before retrieving other types.
2006-03-30 12:42:50 +02:00
Robert Shearman
a1548b45d8
ole32: Put the PeekMessage call of CoWaitForMultipleHandles into a separate function.
...
Put the PeekMessage call of CoWaitForMultipleHandles into a separate
function so that the order and type of the messages retrieved can be
customised in the future.
2006-03-30 12:42:35 +02:00
Robert Shearman
8c551796a9
ole32: Whether the message loop is entered in CoWaitForMultipleHandles,
...
should depend on whether the current apartment is a single threaded one.
2006-03-30 12:42:01 +02:00
Robert Shearman
3091aa5302
ole32: Pass the no yield flag to PeekMessage.
...
Pass the no yield flag to PeekMessage since we sleep in
MsgWaitForMultipleObjectsEx and the extra context switch is wasteful.
2006-03-30 12:41:32 +02:00
Mike McCormack
50436da519
ole32: Fix StgOpenStorage's handling of the STGM_PRIORITY flag.
2006-03-30 12:38:08 +02:00
Kevin Koltzau
0c2d277286
ole32: Initial tests for OLE clipboard functions.
2006-03-22 11:19:25 +01:00
Francois Gouget
6bddeb1cf7
Assorted spelling fixes.
2006-03-21 20:10:39 +01:00
Robert Shearman
650ac14219
ole: Use the thread pool for executing RPC calls for better performance
...
(after the thread pool has been improved).
2006-03-20 12:00:50 +01:00
Robert Shearman
7406cc210b
ole: Implement IRpcChannelBuffer::GetDestCtx on the client side.
2006-03-06 11:09:34 +01:00
Robert Shearman
92a1f52b4d
ole: Store the destination context and the destination context data in
...
the proxy manager when unmarshaling.
2006-03-06 11:08:52 +01:00
Alexandre Julliard
c9cc7e33ff
Fixed some compiler warnings on old gcc versions.
2006-03-02 18:03:32 +01:00
Robert Shearman
9a9981bad5
ole: Change NORMALEXTREFS to 5, like it is in native.
2006-03-01 19:54:45 +01:00
Robert Shearman
857a6d1f63
ole: Fix marshaling of proxies for interfaces that haven't already been unmarshaled.
2006-03-01 19:54:20 +01:00
Vitaly Lipatov
aee52b747e
ole32: Add descriptions for StgCreateDocfile and StgIsStorageFile functions.
2006-02-24 21:10:27 +01:00
Francois Gouget
e092adfc9b
Add trailing '\n's to ok() calls.
2006-02-24 21:07:33 +01:00
Vitaly Lipatov
a8397e307a
ole32/tests: Do not compare returned by DeleteFile value with TRUE.
2006-02-24 11:23:40 +01:00
Robert Shearman
f4a8ba9548
ole: Fallthrough from local activation in CoGetClassObject.
...
If local-server or local-service activation doesn't work in
CoGetClassObject then fallthrough instead of returning from the
function.
2006-02-24 11:23:16 +01:00
Robert Shearman
6c529a7273
ole: Make the CoCreateInstance test succeed.
...
Move the uninitialized apartment check after zeroing out the return
value.
2006-02-22 22:14:52 +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
023ad38914
ole: Test the behaviour of CoCreateInstance with an uninitialized apartment.
2006-02-20 11:16:08 +01:00
Robert Shearman
a37a5014a2
ole: Change the Apartment Model field to a boolean.
...
Change the apartment model field to a boolean that just specifies
whether the apartment is multi-threaded or not and fix up all the
places where this is used.
Fixes a bug where we would return an error if the previous apartment
model passed into CoInitializeEx matches the new apartment model, but
additional optimisation flags are specified.
2006-02-20 11:15:57 +01:00
Mike McCormack
5c3b0df716
ole32: Added a test showing OLE storage's IStorage/IStream refcounting
...
behaviour.
2006-02-15 11:51:05 +01:00
Alexandre Julliard
be22a96847
Include wine/port.h in files that use exceptions.
2006-02-07 16:31:21 +01:00
Robert Shearman
af7c076337
ole32: Print an error message if the apartment isn't initialised in
...
CoCreateInstance.
2006-02-07 16:25:25 +01:00
Huw Davies
aaf7a974a9
ole: ProgIDFromCLSID sets progid to NULL on failure.
2006-01-20 19:41:56 +01:00
Robert Shearman
1b7d346d1f
ole: Verify that the proxy is being used in the correct thread.
2006-01-20 16:16:08 +01:00
Robert Shearman
98734cc894
ole: Add a test for WM_QUIT behaviour during COM calls.
2006-01-20 16:14:32 +01:00
Robert Shearman
6e0029f83d
ole: Fix WM_QUIT Handling in CoWaitForMultipleHandles.
...
When a WM_QUIT message in encountered in CoWaitForMultipleHandles then
it should repost the WM_QUIT message and then switch to waiting
without checking messages.
2006-01-20 16:14:23 +01:00
Robert Shearman
b4fe7ea7c6
ole: Update the COM todo list.
2006-01-18 11:29:20 +01:00
Robert Shearman
ba8cdfdc37
ole: Re-post the quit message outside of the DoDragDrop message loop.
2006-01-18 11:29:13 +01:00
Robert Shearman
b3041ba6ad
ole: Optimisation for COM Calls.
...
Add an optimisation to yield and try to allow the RPC to run before
waiting for messages and RPCs to arrive.
2006-01-14 17:45:49 +01:00
Robert Shearman
f431353058
ole: Fix crash in RpcChannelBuffer_SendReceive.
...
Initialise apt to NULL since ipid_to_apt_stubbuffer no longer does
this for us.
2006-01-12 11:53:32 +01:00
Robert Shearman
9ac3b28354
ole: Use strict prototypes for some test functions.
2006-01-12 11:53:19 +01:00
Robert Shearman
6e6d24e959
ole: Implement IEnumSTATDATA for the Ole Advise Holder.
...
Implement IEnumSTATDATA for the Ole Advise Holder and use it to
implement the Send* functions.
2006-01-11 12:09:32 +01:00
Robert Shearman
781970f001
ole: Initialise hrref so as not to display garbage in the trace.
2006-01-11 12:09:17 +01:00
Robert Shearman
92ad2958ac
ole: Remove some duplicated code.
2006-01-11 12:09:11 +01:00
Robert Shearman
cd2fafb775
ole: Defer apartment window creation until the first object is marshalled.
2006-01-10 20:41:23 +01:00
Robert Shearman
fcba783fc7
ole: Add an accessor function for an apartment's window.
2006-01-10 20:41:22 +01:00
Robert Shearman
d175f154ba
ole: Report and clean up after PostMessage failures.
2006-01-10 20:41:22 +01:00
Robert Shearman
a02cb3ebd6
ole: Pass a channel into IRpcStubBuffer::Invoke.
...
Create a server channel and store this in the ifstub.
Rename ipid_to_apt_and_stubbuffer to ipid_get_dispatch_params and make
the function return an HRESULT.
Return the channel for the ifstub in ipid_get_dispatch_params.
2006-01-10 20:41:22 +01:00
Robert Shearman
8e5b36147d
ole: Reduce the access rights required by start_local_service.
2006-01-10 20:41:22 +01:00
Robert Shearman
c46386ff5c
ole: Return the last error if we couldn't open the requested service.
...
Fix the ok/failed message.
2006-01-10 20:41:22 +01:00
Robert Shearman
b75db2d9de
ole: Join the MTA if necessary when executing an RPC call.
...
Join the MTA if necessary when executing an RPC call to ensure that it
is executing with a valid apartment and won't fail for certain COM
calls.
2006-01-09 18:41:19 +01:00
Robert Shearman
1eda42ccac
ole: Prefer services over servers.
...
Attempt to start as a local service before attempting to start as a
local server for the CLSCTX_LOCAL_SERVER case.
2006-01-09 18:40:42 +01:00
Robert Shearman
e0605afdf6
ole: Add some tests for CLSIDFromString.
2006-01-09 18:40:27 +01:00
Robert Shearman
cc4669cc5f
ole: Remove __CLSIDFromStringA.
...
Move the ANSI implementation of CLSIDFromString to ole16.c and change
CLSIDFromString to only deal with Unicode strings.
2006-01-09 18:40:17 +01:00
Alexandre Julliard
0f81ac3506
ole: Remove a no longer needed smbfs hack.
2006-01-06 21:19:05 +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
Robert Shearman
dfa74b998e
ole: Check the return value of IStream_SetSize in IStream_Read.
...
Check the return value of IStream_SetSize in IStream_Read, since
otherwise execution could continue on and cause heap corruption.
2006-01-03 12:07:49 +01:00
Robert Shearman
8f604e925d
ole: Fix mis-handling of return value in StgStreamImpl_Read.
...
BlockChainStream_ReadAt returns a BOOL, not an HRESULT so change
StgStreamImpl_Read to handle this, by returning STG_E_READFAULT on
failure.
2006-01-03 12:07:34 +01:00
Robert Shearman
85128db39c
Fix detection of V1a prop variant library in test suite.
2005-12-26 12:56:48 +01:00
Ulrich Czekalla
707fa2c3a2
ole32: Return error instead of asserting if storage file is corrupt.
2005-12-22 17:15:05 +01:00
Alexandre Julliard
dbc14a5cb5
ole32: Revert exception handler change.
...
The handler does the opposite of normal page fault handlers.
2005-12-19 17:44:56 +01:00
Alexandre Julliard
ae964ac801
Take advantage of the __EXCEPT_PAGE_FAULT macro.
2005-12-16 17:17:57 +01:00
Alexandre Julliard
db7920bb44
We no longer need to handle EXCEPTION_PRIV_INSTRUCTION on page faults.
2005-12-16 16:37:12 +01:00
Michael Jung
892fc1093d
ole32: Periodically call IDropTarger::DragOver during Drag&Drop.
2005-12-12 12:42:53 +01:00
Eric Pouech
681b71ed9a
Functions with no paramters must be (void).
2005-12-12 12:42:44 +01:00
Eric Pouech
28442721fd
Const correctness fixes.
2005-12-12 11:55:49 +01:00
Robert Shearman
6c3e1f9adf
CreateErrorInfo trace fix.
...
CreateErrorInfo isn't a stub so don't print this in the trace
message.
2005-12-12 11:52:36 +01:00
Robert Shearman
ef8ae2d763
OLE: Fix a typo where brackets were missing.
2005-12-06 10:57:58 +01:00
Francois Gouget
5127dc9f49
Assorted spelling fixes.
2005-12-02 16:15:09 +01:00
Robert Shearman
567919d78f
Implement some user marshal functions and add tests.
2005-11-29 11:35:27 +01:00
Michael Jung
e2bdb145ef
Made the Drag&Drop cursors' rubber band visible on a white background.
2005-11-29 11:23:49 +01:00
Robert Shearman
5f7bb17cf4
Implement IOleObject_DoVerb function by running the object and then
...
delegating to the remote IOleObject_DoVerb function.
2005-11-28 11:24:31 +01:00
Robert Shearman
b9d7754034
Delegate advises to the remote object to enable the client to receive
...
data change notifications.
2005-11-28 11:16:58 +01:00
Robert Shearman
bc09238067
Call DefaultHandler_Stop if we fail to start the server running
...
correctly and a few formatting fixes.
2005-11-28 10:58:51 +01:00
Michael Jung
5db65cdd51
Correct the hot spot position of the drag&drop 'move' and 'link' cursors.
2005-11-28 10:41:00 +01:00
Robert Shearman
22cf59ba43
Call the equivalent delegate function for all of the simple
...
functions.
2005-11-28 10:39:19 +01:00
Alexandre Julliard
0ec7e1a591
Renamed all .cvsignore files to .gitignore.
2005-11-26 13:10:33 +01:00
Robert Shearman
45d440a219
Implement CLSCTX_INPROC_HANDLER in CoGetClassObject similar to
...
CLSCTX_INPROC_SERVER by looking at the InprocHandler32 registry key
instead of InprocServer32.
2005-11-12 19:11:21 +00:00
Francois Gouget
0edbaf7e80
Remove spaces before '\n' in traces.
2005-11-10 12:14:56 +00:00
Markus Amsler
ae542af541
Improve c2man Documented-Total count.
2005-11-09 10:30:57 +00:00
Robert Shearman
f7b65cc716
- Extend COM_OpenKeyForCLSID to open a subkey and return an HRESULT.
...
- Fix up the callers and reorganize CoGetClassObject to split out the
inproc code into another function.
2005-11-09 10:29:11 +00:00
Michael Jung
2f210917ee
Added tracing to CoCreateInstance.
2005-11-08 12:43:24 +00:00
Robert Shearman
65581b8489
We shouldn't pass the application name into CreateProcess because the
...
value stored in the registry could include arguments.
2005-11-08 10:56:02 +00:00
Robert Shearman
fe4015201b
Implement OLE object notifications, making sure to cope with the case
...
of the advise holder not being created because no notifications are
needed.
2005-11-03 19:32:49 +00:00