diff options
author | jiayl@webrtc.org <jiayl@webrtc.org> | 2014-09-24 17:14:05 +0000 |
---|---|---|
committer | jiayl@webrtc.org <jiayl@webrtc.org> | 2014-09-24 17:14:05 +0000 |
commit | 40539b82d5a2c9bcf23d078e997ce0368160f5a3 (patch) | |
tree | 532416c2f3025131e902ab655f3d404945485a6b /app/webrtc/test/peerconnectiontestwrapper.cc | |
parent | 47740f2c26aea1b3b7830abdcba063a12a61d009 (diff) | |
download | talk-40539b82d5a2c9bcf23d078e997ce0368160f5a3.tar.gz |
Fix a problem in Thread::Send.
Previously if thread A->Send is called on thread B, B->ReceiveSends will be called, which enables an arbitrary thread to invoke calls on B while B is wait for A->Send to return. This caused mutliple problems like issue 3559, 3579.
The fix is to limit B->ReceiveSends to only process requests from A.
Also disallow the worker thread invoking other threads.
BUG=3559
R=juberti@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/15089004
git-svn-id: http://webrtc.googlecode.com/svn/trunk/talk@7290 4adac7df-926f-26a2-2b94-8c16560cd09d
Diffstat (limited to 'app/webrtc/test/peerconnectiontestwrapper.cc')
-rw-r--r-- | app/webrtc/test/peerconnectiontestwrapper.cc | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/app/webrtc/test/peerconnectiontestwrapper.cc b/app/webrtc/test/peerconnectiontestwrapper.cc index 8a4f45c..24932b8 100644 --- a/app/webrtc/test/peerconnectiontestwrapper.cc +++ b/app/webrtc/test/peerconnectiontestwrapper.cc @@ -75,9 +75,8 @@ bool PeerConnectionTestWrapper::CreatePc( return false; } - audio_thread_.Start(); fake_audio_capture_module_ = FakeAudioCaptureModule::Create( - &audio_thread_); + rtc::Thread::Current()); if (fake_audio_capture_module_ == NULL) { return false; } |