From ce7f08851c0c8a70e97e5871b7bd9b4cdc3ece3b Mon Sep 17 00:00:00 2001 From: Ryan VanderMeulen Date: Thu, 11 Apr 2013 15:42:37 -0400 Subject: [PATCH] Backed out changeset f556245d6da1 (bug 856848) for build bustage on a CLOSED TREE. --- media/mtransport/runnable_utils.h | 11 ++--- .../src/peerconnection/PeerConnectionImpl.cpp | 4 +- .../peerconnection/PeerConnectionMedia.cpp | 11 ++--- .../src/peerconnection/PeerConnectionMedia.h | 7 ++- .../signaling/test/signaling_unittests.cpp | 46 ++++++------------- 5 files changed, 26 insertions(+), 53 deletions(-) diff --git a/media/mtransport/runnable_utils.h b/media/mtransport/runnable_utils.h index 4426caee22c..dae107923d5 100644 --- a/media/mtransport/runnable_utils.h +++ b/media/mtransport/runnable_utils.h @@ -26,14 +26,14 @@ class runnable_args_base : public nsRunnable { // which is why it is machine generated). The four templates // are: // -// WrapRunnable(o, m, ...) -- wraps a member function m of an object ptr o +// WrapRunnable(o, m, ...) -- wraps a member function m of an object ptr o // WrapRunnableRet(o, m, ..., r) -- wraps a member function m of an object ptr o // the function returns something that can // be assigned to *r // WrapRunnableNM(f, ...) -- wraps a function f // WrapRunnableNMRet(f, ..., r) -- wraps a function f that returns something // that can be assigned to *r -// +// // All of these template functions return a Runnable* which can be passed // to Dispatch(). #include "runnable_utils_generated.h" @@ -45,12 +45,7 @@ static inline nsresult RUN_ON_THREAD(nsIEventTarget *thread, nsIRunnable *runnab bool on; nsresult rv; rv = thread->IsOnCurrentThread(&on); - - // If the target thread has already shut down, we don't want to assert. - if (rv != NS_ERROR_NOT_INITIALIZED) { - MOZ_ASSERT(NS_SUCCEEDED(rv)); - } - + MOZ_ASSERT(NS_SUCCEEDED(rv)); NS_ENSURE_SUCCESS(rv, rv); if(!on) { return thread->Dispatch(runnable_ref, flags); diff --git a/media/webrtc/signaling/src/peerconnection/PeerConnectionImpl.cpp b/media/webrtc/signaling/src/peerconnection/PeerConnectionImpl.cpp index 7416ac1bf66..24b1fd8ec02 100644 --- a/media/webrtc/signaling/src/peerconnection/PeerConnectionImpl.cpp +++ b/media/webrtc/signaling/src/peerconnection/PeerConnectionImpl.cpp @@ -277,7 +277,7 @@ PeerConnectionImpl::PeerConnectionImpl() , mWindow(NULL) , mIdentity(NULL) , mSTSThread(NULL) - , mMedia(NULL) + , mMedia(new PeerConnectionMedia(this)) , mNumAudioStreams(0) , mNumVideoStreams(0) , mHaveDataStream(false) { @@ -526,8 +526,6 @@ PeerConnectionImpl::Initialize(IPeerConnectionObserver* aObserver, return NS_ERROR_FAILURE; } - mMedia = new PeerConnectionMedia(this); - // Connect ICE slots. mMedia->SignalIceGatheringCompleted.connect(this, &PeerConnectionImpl::IceGatheringCompleted); mMedia->SignalIceCompleted.connect(this, &PeerConnectionImpl::IceCompleted); diff --git a/media/webrtc/signaling/src/peerconnection/PeerConnectionMedia.cpp b/media/webrtc/signaling/src/peerconnection/PeerConnectionMedia.cpp index 8eb064a40b9..7f6d5793a97 100644 --- a/media/webrtc/signaling/src/peerconnection/PeerConnectionMedia.cpp +++ b/media/webrtc/signaling/src/peerconnection/PeerConnectionMedia.cpp @@ -120,17 +120,12 @@ PeerConnectionImpl* PeerConnectionImpl::CreatePeerConnection() } -PeerConnectionMedia::PeerConnectionMedia(PeerConnectionImpl *parent) - : mParent(parent), - mLocalSourceStreamsLock("PeerConnectionMedia.mLocalSourceStreamsLock"), - mIceCtx(NULL), - mDNSResolver(new mozilla::NrIceResolver()), - mMainThread(mParent->GetMainThread()), - mSTSThread(mParent->GetSTSThread()) {} - nsresult PeerConnectionMedia::Init(const std::vector& stun_servers, const std::vector& turn_servers) { + mMainThread = mParent->GetMainThread(); + mSTSThread = mParent->GetSTSThread(); + // TODO(ekr@rtfm.com): need some way to set not offerer later // Looks like a bug in the NrIceCtx API. mIceCtx = NrIceCtx::Create("PC:" + mParent->GetHandle(), true); diff --git a/media/webrtc/signaling/src/peerconnection/PeerConnectionMedia.h b/media/webrtc/signaling/src/peerconnection/PeerConnectionMedia.h index cb8e2de726d..9ffc884573d 100644 --- a/media/webrtc/signaling/src/peerconnection/PeerConnectionMedia.h +++ b/media/webrtc/signaling/src/peerconnection/PeerConnectionMedia.h @@ -230,7 +230,12 @@ RemoteSourceStreamInfo(already_AddRefed aMediaStream, class PeerConnectionMedia : public sigslot::has_slots<> { public: - PeerConnectionMedia(PeerConnectionImpl *parent); + PeerConnectionMedia(PeerConnectionImpl *parent) + : mParent(parent), + mLocalSourceStreamsLock("PeerConnectionMedia.mLocalSourceStreamsLock"), + mIceCtx(NULL), + mDNSResolver(new mozilla::NrIceResolver()) {} + ~PeerConnectionMedia() {} nsresult Init(const std::vector& stun_servers, diff --git a/media/webrtc/signaling/test/signaling_unittests.cpp b/media/webrtc/signaling/test/signaling_unittests.cpp index 9573470e002..e28313d80f1 100644 --- a/media/webrtc/signaling/test/signaling_unittests.cpp +++ b/media/webrtc/signaling/test/signaling_unittests.cpp @@ -528,24 +528,25 @@ class ParsedSDP { class SignalingAgent { public: - SignalingAgent() : pc(nullptr) { - cfg_.addStunServer("23.21.150.121", 3478); - - pc = sipcc::PeerConnectionImpl::CreatePeerConnection(); - ASSERT_TRUE(pc); - } + SignalingAgent() : pc(nullptr) {} ~SignalingAgent() { - mozilla::SyncRunnable::DispatchToThread(gThread, + mozilla::SyncRunnable::DispatchToThread(pc->GetMainThread(), WrapRunnable(this, &SignalingAgent::Close)); } void Init_m(nsCOMPtr thread) { + pc = sipcc::PeerConnectionImpl::CreatePeerConnection(); + ASSERT_TRUE(pc); + pObserver = new TestObserver(pc); ASSERT_TRUE(pObserver); - ASSERT_EQ(pc->Initialize(pObserver, nullptr, cfg_, thread), NS_OK); + sipcc::IceConfiguration cfg; + cfg.addStunServer("23.21.150.121", 3478); + ASSERT_EQ(pc->Initialize(pObserver, nullptr, cfg, thread), NS_OK); + } void Init(nsCOMPtr thread) @@ -596,12 +597,10 @@ class SignalingAgent { void Close() { - if (pc) { - cout << "Close" << endl; - - pc->Close(false); - pc = nullptr; - } + cout << "Close" << endl; + + pc->Close(false); + pc = nullptr; // Shutdown is synchronous evidently. // ASSERT_TRUE(pObserver->WaitForObserverCall()); @@ -850,7 +849,6 @@ public: char* offer_; char* answer_; nsRefPtr domMediaStream_; - sipcc::IceConfiguration cfg_; private: void SDPSanityCheck(std::string sdp, uint32_t flags, bool offer) @@ -996,19 +994,6 @@ class SignalingAgentTest : public ::testing::Test { return true; } - void CreateAgentNoInit() { - ScopedDeletePtr agent(new SignalingAgent()); - agents_.push_back(agent.forget()); - } - - bool InitAgent(size_t i) { - return agents_[i]->InitAllowFail(gThread); - } - - SignalingAgent *agent(size_t i) { - return agents_[i]; - } - private: std::vector agents_; }; @@ -1987,11 +1972,6 @@ TEST_F(SignalingAgentTest, CreateUntilFailThenWait) { PR_Sleep(10000); // Wait to see if we crash } -// Test for bug 856433. -TEST_F(SignalingAgentTest, CreateNoInit) { - CreateAgentNoInit(); -} - /* * Test for Bug 843595 */