Bug 1367715: Back out 67e4f5e8a105 as it was not the correct fix; r=backout
authorAaron Klotz <aklotz@mozilla.com>
Tue, 06 Jun 2017 18:17:42 -0600
changeset 410733 6e543c8a893137a588b4c6696d4c8b0920e260ab
parent 410732 780118d9c79c2a8e8f12724ac7d04b0170f330a7
child 410734 43dd97a57eddaaacf8f373a3e7272a1920c4c9c6
push id7391
push usermtabara@mozilla.com
push dateMon, 12 Jun 2017 13:08:53 +0000
treeherdermozilla-beta@2191d7f87e2e [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersbackout
bugs1367715
milestone55.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1367715: Back out 67e4f5e8a105 as it was not the correct fix; r=backout
ipc/mscom/MainThreadHandoff.cpp
--- a/ipc/mscom/MainThreadHandoff.cpp
+++ b/ipc/mscom/MainThreadHandoff.cpp
@@ -500,17 +500,20 @@ MainThreadHandoff::OnWalkInterface(REFII
 
   if (!origInterface) {
     // Nothing to wrap.
     return S_OK;
   }
 
   // First make sure that aInterface isn't a proxy - we don't want to wrap
   // those.
-  MOZ_ASSERT(!IsProxy(origInterface.get()));
+  if (IsProxy(origInterface.get())) {
+    *aInterface = origInterface.release();
+    return S_OK;
+  }
 
   RefPtr<IInterceptor> interceptor;
   HRESULT hr = mInterceptor->Resolve(IID_IInterceptor,
                                      (void**) getter_AddRefs(interceptor));
   MOZ_ASSERT(SUCCEEDED(hr));
   if (FAILED(hr)) {
     return hr;
   }