mirror of
https://github.com/reactos/reactos.git
synced 2024-12-27 09:34:43 +00:00
A free Windows-compatible Operating System - mirrored from GitHub
f4477fcb16
Robert Shearman <rob@codeweavers.com> - Add documentation for most Co* functions. - Move several functions into different files to group them with similar functions. - Implement CoDisconnectObject. - Change CoLockObjectExternal so that it does the correct action now and eliminate a fair few lines of now redundant code. - Rename OLE32_Dll{Register,Unregister}Server to Dll{Register,Unregister}Server. - Move OLE automation interface registration to oleaut32. - Add IRemUnknown to list of interfaces to register. - 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. - 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. - Implement IRemUnknown. - Use IRemUnknown for life-cycle management instead of the current hacks. - Generate machine-local IPIDs. - Make pipes be uniquely identified only by their IPID. - Implement table marshaling. - The apartment reference should be held while the stub manager reference is held. - Fix same apartment-unmarshal detection. - Proxies/stubs for IRemUnknown methods, based on code written by Ove Ksven. - 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. - Split up apartment creation so that the long code paths that don't need locking no longer have locking. - Add special cases for the threads that join apartments but can't increase the refcount of the apartment. - Free TLS storage on thread destruction (including releasing the apartment the thread is in, if any, and so making another test pass). - More tests. - Change return code of CoGetPSClsid to match test result. - Do a slight hack to make IRemUnknown proxies be added after the proxy that uses them to stop them being used after they are destroyed. - Fix multiple local server connections. - The apartment reference should be held while the stub manager reference is held. - Fix same apartment-unmarshal detection. - Don't use the pipe caching code because it doesn't work correctly at the moment. - Always write disconnect reply packet, even in failure cases. - Move object-to-stub-manager mapping rule to register_ifstub. - Pass the original IID to IMarshal_UnmarshalInterface and query for the requested interface. - Unmarshaling IID_NULL means use the IID the interface was originally marshaled with. - Add code for destroying the thread-local storage data, but don't use it yet. - Don't release apartment on changing modes because we didn't add a reference anywhere. - Quieten the RPC_E_DISCONNECTED error message as it is an expected return code. - Treat IID_NULL the same as IID_IUnknown. - Make tests compile on Win95 again. - Fix copy+paste error where the test failure should be from the CoUnmarshalInterface function. - Give IUnknown its own ifstub to fix ref-counting and ipid storage issues. - Add a new flag SORFP_NOLIFETIMEMGMT to tell the proxy manager not to call any IRemUnknown functions. - Move the low-level unmarshaling code into a new function, unmarshal_object, so that it can be easily reused for unmarshaling IRemUnknown. - Consolidate more stub creation details into register_ifstub. - Replace the current wine_marshal_id structure with STDOBJREF for the on-the-wire format. - Initialize clsid member to the marshaler clsid to fix custom marshaling. - Make proxy shutdown test succeed by releasing the channel on disconnect. - Remove wine_marshal_data: it is unneeded and there is no equivalent in STDOBJREF. - Remove obsolete structs, rearrange things to group the structs together and to group similar functions. - Document thread-safety of members of structs. - Document CoSetState & CoGetState. - Rewrite them to only retrieve TLS info once. - Remove trailing whitespace in COM_CurrentInfo. - Release the client security objects when no longer needed (reported by Mike McCormack). - Implement CoSetProxyBlanket, CoQueryProxyBlanket and CoCopyProxy. - Update todo list. - Destroy stubs on apartment shutdown. - Make MTA dynamically allocated so that proxies and other resources are freed at the proper time. - Changed/removed some incorrect comments regarding apartments. Mike Hearn <mh@codeweavers.com> - Various formatting/style changes. - Force context switch on chanbuf disconnect to avoid a race in the test suite. Mike Hearn <mh@codeweavers.com> Robert Shearman <rob@codeweavers.com> - Rework RPC dispatch layer to be simpler and not get confused by server/client duality. - Make threads shut down at the right time and not access freed memory after apartment destruction. - Rename stub_dispatch_thread to client_dispatch_thread. - Add some more tracing - Check return value of WaitNamedPipe. - Change named pipe timeouts to 0.5s, which should be enough for even the slowest machines. Christian Costa <titan.costa@wanadoo.fr> - CoInitialize(Ex) should return S_FALSE when COM is already initialized for the current thread. svn path=/trunk/; revision=13532 |
||
---|---|---|
irc | ||
msvc6 | ||
os2 | ||
posix | ||
reactos | ||
rosapps |