Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1975)

Unified Diff: media/audio/audio_output_proxy.cc

Issue 9255017: Add thread safety to AudioManagerBase to protect access to the audio thread member variable. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix style issue Created 8 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « media/audio/audio_output_proxy.h ('k') | media/audio/audio_output_proxy_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/audio/audio_output_proxy.cc
diff --git a/media/audio/audio_output_proxy.cc b/media/audio/audio_output_proxy.cc
index e8309cf372dda72417ab87add262d31a3aad8167..6d7e8782784e69ea6414020e7ebb6a6ba96196d9 100644
--- a/media/audio/audio_output_proxy.cc
+++ b/media/audio/audio_output_proxy.cc
@@ -14,17 +14,16 @@ AudioOutputProxy::AudioOutputProxy(AudioOutputDispatcher* dispatcher)
state_(kCreated),
physical_stream_(NULL),
volume_(1.0) {
- DCHECK_EQ(MessageLoop::current(), dispatcher_->message_loop());
}
AudioOutputProxy::~AudioOutputProxy() {
- DCHECK_EQ(MessageLoop::current(), dispatcher_->message_loop());
+ DCHECK(CalledOnValidThread());
DCHECK(state_ == kCreated || state_ == kClosed);
DCHECK(!physical_stream_);
}
bool AudioOutputProxy::Open() {
- DCHECK_EQ(MessageLoop::current(), dispatcher_->message_loop());
+ DCHECK(CalledOnValidThread());
DCHECK_EQ(state_, kCreated);
if (!dispatcher_->StreamOpened()) {
@@ -37,7 +36,7 @@ bool AudioOutputProxy::Open() {
}
void AudioOutputProxy::Start(AudioSourceCallback* callback) {
- DCHECK_EQ(MessageLoop::current(), dispatcher_->message_loop());
+ DCHECK(CalledOnValidThread());
DCHECK(physical_stream_ == NULL);
DCHECK_EQ(state_, kOpened);
@@ -54,7 +53,7 @@ void AudioOutputProxy::Start(AudioSourceCallback* callback) {
}
void AudioOutputProxy::Stop() {
- DCHECK_EQ(MessageLoop::current(), dispatcher_->message_loop());
+ DCHECK(CalledOnValidThread());
if (state_ != kPlaying)
return;
@@ -66,7 +65,7 @@ void AudioOutputProxy::Stop() {
}
void AudioOutputProxy::SetVolume(double volume) {
- DCHECK_EQ(MessageLoop::current(), dispatcher_->message_loop());
+ DCHECK(CalledOnValidThread());
volume_ = volume;
if (physical_stream_) {
physical_stream_->SetVolume(volume);
@@ -74,12 +73,12 @@ void AudioOutputProxy::SetVolume(double volume) {
}
void AudioOutputProxy::GetVolume(double* volume) {
- DCHECK_EQ(MessageLoop::current(), dispatcher_->message_loop());
+ DCHECK(CalledOnValidThread());
*volume = volume_;
}
void AudioOutputProxy::Close() {
- DCHECK_EQ(MessageLoop::current(), dispatcher_->message_loop());
+ DCHECK(CalledOnValidThread());
DCHECK(state_ == kCreated || state_ == kError || state_ == kOpened);
DCHECK(!physical_stream_);
« no previous file with comments | « media/audio/audio_output_proxy.h ('k') | media/audio/audio_output_proxy_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698