gecko-dev/ipc/mscom
James Teh d0f0f73d64 Bug 1581441: mscom::GetObjRefSize: Correctly handle proxies marshaled by the aggregated standard marshaler. r=aklotz
For Fission, the parent process needs to take an Accessible sent up from one content process and send it down to another content process, where it will eventually be returned to the client.
If sandboxing is enabled, we must use a PassthruProxy, and if the handler is enabled, the handler will marshal the interface.
Even though we strip out the handler, the handler still marshals using the aggregated standard marshaler, which uses a different clsid (CLSID_AggStdMarshal).
When unmarshaling to return to the client, we call GetObjRefSize.
This previously didn't know about the aggregated standard marshaler, so it failed, causing E_INVALIDARG to be returned to the client.
Now, we just handle these clsids in the same way.

Differential Revision: https://phabricator.services.mozilla.com/D51246

--HG--
extra : moz-landing-system : lando
2019-10-31 21:45:17 +00:00
..
mozglue Bug 1542830: Part 4 - Modify mozglue to use new untrusted modules interfaces; r=mhowell 2019-09-23 20:18:41 +00:00
oop Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan 2019-10-21 14:13:44 +00:00
ActivationContext.cpp Bug 1528651 - Another follow-up to fix warnings on beta/release builds. r=aklotz 2019-03-05 20:18:48 +00:00
ActivationContext.h Bug 1586436: Ensure that mscom methods that accept variadic arguments use rvalue references in their arguments; r=Jamie 2019-10-08 20:43:38 +00:00
Aggregation.h
AgileReference.cpp Bug 1576925: Make AgileReference copyable; r=Jamie 2019-08-28 15:05:32 +00:00
AgileReference.h Bug 1576925: Make AgileReference copyable; r=Jamie 2019-08-28 15:05:32 +00:00
ApartmentRegion.h Bug 1400344: Rename mscom::MainThreadRuntime to mscom::ProcessRuntime and make it aware of Win32k lockdown and of multiple instantiations; r=Jamie 2019-02-14 18:56:20 +00:00
AsyncInvoker.h Bug 1586436: Ensure that mscom methods that accept variadic arguments use rvalue references in their arguments; r=Jamie 2019-10-08 20:43:38 +00:00
COMPtrHolder.h Bug 1375863 - fold MOZ_CONTENT_SANDBOX and MOZ_GMP_SANDBOX into MOZ_SANDBOX; r=jld,firefox-build-system-reviewers 2019-03-18 22:31:59 +00:00
DispatchForwarder.cpp Bug 1523969 part 12 - Move method definition inline comments to new line in 'ipc/'. r=froydnj 2019-02-25 16:08:36 -06:00
DispatchForwarder.h Bug 1547143 - Format the tree: Be prescriptive with the pointer style (left) r=Ehsan 2019-05-01 08:47:10 +00:00
EnsureMTA.cpp Bug 1570701: Part 2 - Add asynchronous CreateInstance method to mscom::EnsureMTA; r=Jamie 2019-09-04 15:36:42 +00:00
EnsureMTA.h Bug 1570701: Part 2 - Add asynchronous CreateInstance method to mscom::EnsureMTA; r=Jamie 2019-09-04 15:36:42 +00:00
FastMarshaler.cpp
FastMarshaler.h
IHandlerProvider.h
Interceptor.cpp Bug 1523969 part 12 - Move method definition inline comments to new line in 'ipc/'. r=froydnj 2019-02-25 16:08:36 -06:00
Interceptor.h
InterceptorLog.cpp Bug 1375863 - fold MOZ_CONTENT_SANDBOX and MOZ_GMP_SANDBOX into MOZ_SANDBOX; r=jld,firefox-build-system-reviewers 2019-03-18 22:31:59 +00:00
InterceptorLog.h
MainThreadHandoff.cpp Bug 1523969 part 12 - Move method definition inline comments to new line in 'ipc/'. r=froydnj 2019-02-25 16:08:36 -06:00
MainThreadHandoff.h
MainThreadInvoker.cpp Bug 1523969 part 12 - Move method definition inline comments to new line in 'ipc/'. r=froydnj 2019-02-25 16:08:36 -06:00
MainThreadInvoker.h Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan 2019-10-21 14:13:44 +00:00
Objref.cpp Bug 1581441: mscom::GetObjRefSize: Correctly handle proxies marshaled by the aggregated standard marshaler. r=aklotz 2019-10-31 21:45:17 +00:00
Objref.h
PassthruProxy.cpp Bug 1523969 part 12 - Move method definition inline comments to new line in 'ipc/'. r=froydnj 2019-02-25 16:08:36 -06:00
PassthruProxy.h Bug 1375863 - fold MOZ_CONTENT_SANDBOX and MOZ_GMP_SANDBOX into MOZ_SANDBOX; r=jld,firefox-build-system-reviewers 2019-03-18 22:31:59 +00:00
ProcessRuntime.cpp Bug 1574298: Convert mscom::ProcessRuntime to use ProcessCategory enum and matching constructor; r=Jamie 2019-08-16 16:06:45 +00:00
ProcessRuntime.h Bug 1574298: Convert mscom::ProcessRuntime to use ProcessCategory enum and matching constructor; r=Jamie 2019-08-16 16:06:45 +00:00
ProxyStream.cpp Bug 1528651 - Another follow-up to fix warnings on beta/release builds. r=aklotz 2019-03-05 20:18:48 +00:00
ProxyStream.h
Ptr.h Bug 1400344: Rename mscom::MainThreadRuntime to mscom::ProcessRuntime and make it aware of Win32k lockdown and of multiple instantiations; r=Jamie 2019-02-14 18:56:20 +00:00
Registration.cpp Bug 1536642: Ensure that mscom::RegisteredProxy move assignment correctly releases its references; r=Jamie 2019-03-20 00:29:27 +00:00
Registration.h Bug 1536642: Ensure that mscom::RegisteredProxy move assignment correctly releases its references; r=Jamie 2019-03-20 00:29:27 +00:00
RegistrationAnnotator.cpp
RegistrationAnnotator.h
SpinEvent.cpp Bug 1523969 part 12 - Move method definition inline comments to new line in 'ipc/'. r=froydnj 2019-02-25 16:08:36 -06:00
SpinEvent.h
StructStream.cpp
StructStream.h
Utils.cpp Bug 1570701: Part 1 - Add IsClassThreadAwareInprocServer utility function to MSCOM; r=Jamie 2019-09-03 23:58:39 +00:00
Utils.h Bug 1570701: Part 1 - Add IsClassThreadAwareInprocServer utility function to MSCOM; r=Jamie 2019-09-03 23:58:39 +00:00
VTableBuilder.c
VTableBuilder.h
WeakRef.cpp
WeakRef.h
moz.build Bug 1528651 - Fix warnings and re-enable warnings-as-errors in ipc/mscom/. r=aklotz 2019-02-20 20:57:00 +09:00