зеркало из https://github.com/mozilla/gecko-dev.git
d0f0f73d64
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 |
||
---|---|---|
.. | ||
mozglue | ||
oop | ||
ActivationContext.cpp | ||
ActivationContext.h | ||
Aggregation.h | ||
AgileReference.cpp | ||
AgileReference.h | ||
ApartmentRegion.h | ||
AsyncInvoker.h | ||
COMPtrHolder.h | ||
DispatchForwarder.cpp | ||
DispatchForwarder.h | ||
EnsureMTA.cpp | ||
EnsureMTA.h | ||
FastMarshaler.cpp | ||
FastMarshaler.h | ||
IHandlerProvider.h | ||
Interceptor.cpp | ||
Interceptor.h | ||
InterceptorLog.cpp | ||
InterceptorLog.h | ||
MainThreadHandoff.cpp | ||
MainThreadHandoff.h | ||
MainThreadInvoker.cpp | ||
MainThreadInvoker.h | ||
Objref.cpp | ||
Objref.h | ||
PassthruProxy.cpp | ||
PassthruProxy.h | ||
ProcessRuntime.cpp | ||
ProcessRuntime.h | ||
ProxyStream.cpp | ||
ProxyStream.h | ||
Ptr.h | ||
Registration.cpp | ||
Registration.h | ||
RegistrationAnnotator.cpp | ||
RegistrationAnnotator.h | ||
SpinEvent.cpp | ||
SpinEvent.h | ||
StructStream.cpp | ||
StructStream.h | ||
Utils.cpp | ||
Utils.h | ||
VTableBuilder.c | ||
VTableBuilder.h | ||
WeakRef.cpp | ||
WeakRef.h | ||
moz.build |