Commit Graph

134 Commits

Author SHA1 Message Date
Francois Gouget 93a8ede0e8 ole32: Add a __WINE_ALLOC_SIZE attribute to heap_alloc().
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-09 11:23:22 +01:00
Huw Davies 327100fef9 ole32: Don't block inside CoDisconnectObject.
This may be called inside a COM call to the object.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-14 12:43:17 +09:00
Huw Davies 35571a7254 ole32: Hold a reference to the stub manager throughout an incoming call.
This will enable us to defer deleting the manager until the call has finished.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-14 12:43:13 +09:00
Huw Davies 94ee4096ec ole32: Add a stub for OleCreateFromFileEx.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-09 19:17:02 +09:00
Jacek Caban 38a9a232f7 ole32: Use get_stub_manager_from_object in CoDisconnectObject. 2015-09-04 19:29:29 +09:00
Jacek Caban 9bdb97e694 ole32: Use proper interface pointer in CreateStub call. 2015-08-29 14:28:23 +09:00
Jacek Caban e5edbc6fa0 ole32: Use proper IUnknown implementation when finding and creating stub manager. 2015-08-29 14:28:22 +09:00
Nikolay Sivov d0bf7f4eaf ole32: Added activation context support for OleRegGetMiscStatus(). 2013-11-11 20:56:20 +01:00
Nikolay Sivov 98f3ecc32a ole32: GIT can be released on process detach only. 2013-08-23 10:41:24 +02:00
Nikolay Sivov 2f21130f2e ole32: Fix standard GIT initialization. 2013-08-20 12:01:35 +02:00
Jacek Caban a30cc75fe0 ole32: Added IExternalConnection support. 2013-05-23 20:18:16 +02:00
Jacek Caban 889112a29a ole32: Use a separated object to expose local servers instead of marshaling them in CoRegisterClassObject. 2013-05-23 20:03:17 +02:00
Hans Leidekker a82c49028d ole32: Use wrappers around NT functions to access the registry in CoGetPSClsid. 2012-11-26 16:59:17 +01:00
Nikolay Sivov 0b5c0855be ole32: Store destination context and context data in server channel. 2012-10-15 15:25:34 +02:00
Marcus Meissner da0f475d4b ole32: Mark two functions as hidden. 2011-10-03 16:10:56 -05:00
Frédéric Delanoy 7e309601f3 dlls: Assorted spelling fixes. 2011-08-03 14:15:50 +02:00
Alexandre Julliard 096bf10f11 ole32: Specify the PSFactoryBuffer class in the idl files. 2011-08-01 17:20:46 +02:00
Marcus Meissner 14c4ef3fdd ole32: Mark internal symbols has hidden visibility. 2011-04-25 13:02:01 +02:00
Alexandre Julliard 54bf38575e ole32: Get rid of the ICOM_THIS_MULTI macro. 2010-11-11 20:16:59 +01:00
Rob Shearman 24cccbf4d1 ole32: Add inproc handler object creation support for CoCreateInstance. 2009-11-24 10:46:12 +01:00
Francois Gouget 3cbeae820d ole32: Make apartment_addref() static. 2009-07-07 11:16:26 +02:00
Hans Leidekker b9be397024 ole32: Implement CoGetContextToken. 2009-06-23 15:52:37 +02:00
Francois Gouget 872035f1ab ole32: Make stub_manager_int_addref() static. 2009-06-22 13:31:03 +02:00
Huw Davies b133e94b62 ole32: Register a few more clipboard formats and make them have global scope. 2009-04-23 18:14:27 +02:00
Alexandre Julliard 7b6dd2c9f8 ole32: Get rid of WINE_StringFromCLSID and A->W conversions. 2009-03-12 13:09:52 +01:00
Andrey Turkin d0a345f914 ole32: Add a few fields to OLE TLS area to match native memory layout. 2009-01-19 14:46:02 +01:00
Andrey Turkin a06f568a2a ole32: Add CoGetCallContext and CoSwitchCallContext implementations. 2009-01-19 14:44:32 +01:00
Alexandre Julliard 4bb2199c8e ole32: Make a function static. 2008-12-04 12:47:56 +01:00
Alexandre Julliard 16b5e6b9b5 ole32: Register interfaces through dlldata.c as far as possible. 2008-12-02 20:52:09 +01:00
Alexandre Julliard 1bd26cca94 ole32: Use a dlldata.c file instead of maintaining the data manually. 2008-12-01 18:56:15 +01:00
Maarten Lankhorst 92dca953d9 ole32: Add Co*InitializeSpy functions. 2008-11-26 13:44:36 +01:00
Alexandre Julliard ebdb933b6d ole32: Convert source files to utf-8. 2008-10-18 19:20:29 +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 630e273d17 uuid: Add CLSID_InProcFreeMarshaler.
Remove its initialisation from ole32.
2008-03-06 17:43:19 +01:00
Francois Gouget 29ef0b90ee Assorted spelling, punctuation and case fixes. 2008-03-03 12:04:48 +01:00
James Hawkins 7b56757cf6 janitorial: Remove links to any microsoft site. 2008-03-01 12:17:13 +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 d792a522c3 ole32: Remove an incorrect comment. 2007-11-02 12:18:50 +01:00
Andrew Talbot 66b05dde02 ole32: Constify some variables. 2007-06-29 14:30:48 +02:00
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
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 74c04149be ole32: Move declaration for FileMonikerImpl_DecomposePath from compobj_private.h to moniker.h. 2007-04-05 13:26:29 +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 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 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 d1ec56c871 ole32: Generate OXID_INFO in the stub manager.
Copy the OXID_INFO from the stub manager, if available, in 
proxy_manager_construct. Otherwise, attempt to resolve it.

Use ipidRemUnknown from OXID_INFO in the proxy manager instead of 
magically generating the IPID for RemUnknown.
2007-03-27 12:39:44 +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 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 880542a9f8 ole32: Close the named pipe after revoking local server objects. 2007-03-09 21:16:37 +01:00
Rob Shearman cb9c40a8cf ole32: Add the external references that the server gave to us to any existing ifproxy,
so that the right external reference count is released when the proxy is destroyed.
Protect all changes to refs in the ifproxy using interlocked functions 
and update the thread-safety documentation.
2007-02-06 21:35:25 +01:00