Remove ASSERT in TransportChannelProxy::SetImplementation, when
proxy already set to same transport channel impl. Since session can call SetImplementation multiple times with or without BUNDLE, there are cases when SetImplementation is called with same impl (OnRemoteCandidates/PushdownTransportDescription/SetupMux). Also variables in cricket::TransportProxy like |connecting_| and |negotiated_| are accessed both between worker thread and signaling threads (which calls for bigger change on how session interacts with Transport and TransportChannelProxy). I have a created a separate bug to address later issue. Also if single thread used as worker and signaling thread, we can end up calling SetLocalDescription and OnRemoteCandidates in same call sequence, which will end up calling SetImplementation twice. R=wu@webrtc.org Review URL: https://webrtc-codereview.appspot.com/12019007 git-svn-id: http://webrtc.googlecode.com/svn/trunk@5944 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
parent
f5a33f145b
commit
54fd70046d
@ -58,7 +58,6 @@ void TransportChannelProxy::SetImplementation(TransportChannelImpl* impl) {
|
|||||||
ASSERT(talk_base::Thread::Current() == worker_thread_);
|
ASSERT(talk_base::Thread::Current() == worker_thread_);
|
||||||
|
|
||||||
if (impl == impl_) {
|
if (impl == impl_) {
|
||||||
ASSERT(false);
|
|
||||||
// Ignore if the |impl| has already been set.
|
// Ignore if the |impl| has already been set.
|
||||||
LOG(LS_WARNING) << "Ignored TransportChannelProxy::SetImplementation call "
|
LOG(LS_WARNING) << "Ignored TransportChannelProxy::SetImplementation call "
|
||||||
<< "with a same impl as the existing one.";
|
<< "with a same impl as the existing one.";
|
||||||
|
Loading…
Reference in New Issue
Block a user