Bug 1411977 - Part 6: Don't unwind the stack when firing onsignalingstatechange. r?drno draft
authorByron Campen [:bwc] <docfaraday@gmail.com>
Thu, 25 Jan 2018 10:09:17 -0600
changeset 748504 5001484185a5dd0662151c9d0c8c05709b1d6bda
parent 748503 07bdde0c57c1effc5823aadbc68c39d90dd096ce
push id97190
push userbcampen@mozilla.com
push dateMon, 29 Jan 2018 22:41:18 +0000
reviewersdrno
bugs1411977
milestone60.0a1
Bug 1411977 - Part 6: Don't unwind the stack when firing onsignalingstatechange. r?drno MozReview-Commit-ID: 5qAlxKFzKQk
media/webrtc/signaling/src/peerconnection/PeerConnectionImpl.cpp
--- a/media/webrtc/signaling/src/peerconnection/PeerConnectionImpl.cpp
+++ b/media/webrtc/signaling/src/peerconnection/PeerConnectionImpl.cpp
@@ -3207,23 +3207,19 @@ void PeerConnectionImpl::IceConnectionSt
     default:
       MOZ_ASSERT_UNREACHABLE("Unexpected mIceConnectionState!");
   }
 
   RefPtr<PeerConnectionObserver> pco = do_QueryObjectReferent(mPCObserver);
   if (!pco) {
     return;
   }
+
   WrappableJSErrorResult rv;
-  RUN_ON_THREAD(mThread,
-                WrapRunnable(pco,
-                             &PeerConnectionObserver::OnStateChange,
-                             PCObserverStateType::IceConnectionState,
-                             rv, static_cast<JSCompartment*>(nullptr)),
-                NS_DISPATCH_NORMAL);
+  pco->OnStateChange(PCObserverStateType::IceConnectionState, rv);
 }
 
 void
 PeerConnectionImpl::IceGatheringStateChange(
     NrIceCtx* ctx,
     NrIceCtx::GatheringState state)
 {
   PC_AUTO_ENTER_API_CALL_VOID_RETURN(false);