Commit Graph

69 Commits

Author SHA1 Message Date
Rob Shearman
24cccbf4d1 ole32: Add inproc handler object creation support for CoCreateInstance. 2009-11-24 10:46:12 +01:00
Andrew Talbot
96d7c6e2ea ole32: Remove unused Wine debug channel. 2008-12-19 17:36:35 +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
Alexandre Julliard
ebdb933b6d ole32: Convert source files to utf-8. 2008-10-18 19:20:29 +02:00
Alexandre Julliard
19966f8c0e comcat: Moved all the implementation to ole32 where it belongs. 2008-10-11 13:30:08 +02:00
Dan Hipschman
19cccae29d ole32: Add a widl-generated proxy file for oleidl.idl. 2008-09-02 16:03:02 +02:00
Dan Hipschman
44800b6ad4 ole32: Add a widl-generated proxy file for objidl.idl. 2008-09-02 16:02:29 +02:00
Dan Hipschman
4afc326638 ole32: Add widl-generated proxies for unknwn.idl and dcom.idl. 2008-09-02 16:00:33 +02:00
Rob Shearman
064b6fce0c ole32: Fix testing of HRESULT types with not operator instead of comparing against S_OK.
This makes it more obvious what the code is doing.
2008-08-18 17:34:12 +02:00
James Hawkins
7b56757cf6 janitorial: Remove links to any microsoft site. 2008-03-01 12:17:13 +01:00
Rob Shearman
b7f3ee51b1 ole32: Add pointer moniker implementation. 2008-02-04 13:04:21 +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
caa9f89a18 ole32: Fix a memory leak. 2008-01-07 22:54:51 +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
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
Michael Stefaniuc
dbfa8eedf7 ole32: Free memory on error path (found by Smatch). 2007-09-25 11:18:24 +02:00
Andrew Talbot
4ea954df42 ole32: Exclude unused headers. 2007-05-16 11:55:51 +02:00
Rob Shearman
d3217872b3 ole32: Allow the marshaling/unmarshaling of NULL interfaces for IClassFactory. 2006-12-24 13:07:32 +01: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
Michael Stefaniuc
21ff87bf50 ole32: Win64 printf format warning fixes. 2006-10-16 10:53:28 +02:00
Robert Shearman
588c782ac8 ole32: Call IRpcChannelBuffer_GetBuffer for the RemRelease case of
Invoke, even though we are requesting a buffer size of 0 as we put
extra data into the buffer in IRpcChannelBuffer_GetBuffer.
2006-08-26 19:37:10 +02:00
Robert Shearman
428c63f586 ole32: Use IRpcChannelBuffer_GetBuffer in the hand-made proxy/stubs
instead of calling I_RpcGetBuffer as IRpcChannelBuffer_GetBuffer does
some extra magic.
2006-08-26 19:37:02 +02:00
Alexandre Julliard
96ad688174 ole32: Don't use sizeof in traces to avoid printf format warnings. 2006-06-13 14:11:15 +02:00
Alexandre Julliard
32f57b0214 ole32: Use the standard DEFINE_OLEGUID macro to define GUIDs. 2006-06-09 21:09:49 +02:00
Jonathan Ernst
360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Robert Shearman
875390110f ole32: Release the proxy buffer object on the last release of the proxy's outer unknown.
Release the proxy buffer object on the last release of the proxy's outer
unknown, otherwise memory is leaked for the Ndr implementation of
IRpcProxyBuffer.

Fix up the hand-coded proxies to match the behaviour from the Ndr
implementation.
2006-05-23 12:05:01 +02:00
Robert Shearman
8a4f71c61e ole32: Add an implementation of class monikers. 2006-05-08 21:13:32 +02:00
Robert Shearman
caefc34084 ole32: Add a class factory for composite monikers. 2006-05-08 15:43:16 +02:00
Robert Shearman
caa8b4ed1d ole32: Support marshaling of anti monikers. 2006-05-08 15:39:10 +02:00
Robert Shearman
b3a4b59668 Fix ref-counting rules to match native DCOM Dlls. 2005-09-18 11:10:37 +00:00
Alexandre Julliard
d37f0abf07 Don't prefix the functions DllCanUnloadNow, DllGetClassObject and
Dll(Un)RegisterServer with the dll name so that the compiler can check
the prototypes.
2005-08-08 17:35:28 +00:00
Robert Shearman
5d873adf9f Marshal return value from IRemUnknown_RemQueryInterface. 2005-07-19 19:43:05 +00:00
Robert Shearman
97be0be7e4 - We should be starting with 1 reference.
- IRpcStubBuffer_Disconnect can be called more than once.
2005-07-19 19:13:11 +00:00
Mike McCormack
c7fdb4565a Fix gcc 4.0 -Wpointer-sign warnings. 2005-07-05 11:02:54 +00:00
Dmitry Timoshkov
eba47f1dfe Make remaining OLE interface vtables const. 2005-06-06 19:50:35 +00:00
Mike Hearn
e3f990467c Add some tracing to the IRemUnknown RpcProxyBuffer implementation. 2005-06-05 18:13:47 +00:00
Robert Shearman
34d3049360 - Add a generic moniker marshaler that works by saving & loading
monikers to & from the stream.
- Use the generic moniker marshal in the file & item monikers and add
  a class factory for each.
2005-05-19 14:22:14 +00:00
Francois Gouget
93416cdaf7 Assorted spelling fixes. 2005-03-23 13:15:18 +00:00
Robert Shearman
2d2a39cc42 - Use I_RpcGetBuffer, instead of our own buffer routines to fix an
occasional test crash caused by heap corruption.
- Zero the memory block passed to RpcServerRegisterIfEx so we don't
  pass garbage in some of the fields we don't fill in.
- Return the correct error code from create_server and fix two handle
  leaks.
- TODO update.
2005-02-15 21:48:09 +00:00
Robert Shearman
3018974ce3 - Make proxy manager use IMultiQI instead of IInternalUnknown as tests
show that IInternalUnknown isn't exposed.
- Implement IMultiQI on top of IRemUnknown calls.
- Silence some fixmes that occur during tests and don't give us any
  useful information.
- Fix typo in class factory proxy that caused us to use the wrong
  offset into the CFProxy structure, causing us to not call the
  outer_unknown properly.
2005-01-26 21:07:05 +00:00
Robert Shearman
cbbf08a7e2 - Use InterlockedIncrement for the ipid counter instead of a critical
section (suggested by Mike Hearn).
- Remove a line added by a bad merge.
- Implement RemUnkStub_Disconnect.
- Remove all of the RPC disconnect code.
2005-01-26 20:53:06 +00:00
Robert Shearman
6e042873d5 Proxies/stubs for IRemUnknown methods, based on code written by Ove
Kåven.
2005-01-25 19:02:54 +00:00
Robert Shearman
6a20b2f476 - Initialize ppv pointer in ClientIdentity_QueryInterface to NULL as
apps depend on this.
- Don't release IRpcProxyBuffer on ifproxy destruction - the caller
  will do this for us.
- Make find_proxy_manager add a reference to the proxy manager and
  make proxy_manager_construct return an object with a valid
  ref-count.
- Remove stray not operator to fix a memory leak / crash in
  proxy_manager_destroy.
- More debug messages, especially on errors.
- Fix ref-count leak in the Class Factory proxy.
- Add a test case for IClassFactory_CreateInstance.
2005-01-19 17:00:20 +00:00
Robert Shearman
b5e4d1a8d8 The channel buffer can be NULL if the proxy is disconnected, so check
for this before releasing it.
2005-01-05 17:30:20 +00:00
Robert Shearman
dee74a6ec9 Make the ClassFactory proxy support aggregation. 2005-01-04 11:47:52 +00:00
Francois Gouget
486d020c1b Don't define COBJMACROS in objbase.h.
Update the Wine sources accordingly.
2004-10-07 03:06:48 +00:00
Joris Huizer
34cffce6f9 Ref count increment/decrement cleanup. 2004-09-24 01:16:53 +00:00
Alexandre Julliard
241a4c34b1 Get rid of the non-standard ICOM_THIS macro. 2004-09-09 21:03:58 +00:00
Alexandre Julliard
f714b39762 Get rid of the no longer used ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
macro.
2004-08-23 19:39:48 +00:00