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

Unified Diff: media/audio/audio_output_proxy.cc

Issue 10958020: Don't fallback if we've successfully opened a stream previously. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Revert double-stop() change. Created 8 years, 3 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
Index: media/audio/audio_output_proxy.cc
diff --git a/media/audio/audio_output_proxy.cc b/media/audio/audio_output_proxy.cc
index 16b7955a0e357ef53ea5ac6234504137350bac8f..8bdc135805b9c4e68202afb5a218de8a28a46080 100644
--- a/media/audio/audio_output_proxy.cc
+++ b/media/audio/audio_output_proxy.cc
@@ -19,15 +19,15 @@ AudioOutputProxy::AudioOutputProxy(AudioOutputDispatcher* dispatcher)
AudioOutputProxy::~AudioOutputProxy() {
DCHECK(CalledOnValidThread());
- CHECK(state_ == kCreated || state_ == kClosed) << "State is: " << state_;
+ DCHECK(state_ == kCreated || state_ == kClosed) << "State is: " << state_;
}
bool AudioOutputProxy::Open() {
DCHECK(CalledOnValidThread());
- CHECK_EQ(state_, kCreated);
+ DCHECK_EQ(state_, kCreated);
if (!dispatcher_->OpenStream()) {
- state_ = kError;
+ state_ = kOpenError;
return false;
}
@@ -37,10 +37,10 @@ bool AudioOutputProxy::Open() {
void AudioOutputProxy::Start(AudioSourceCallback* callback) {
DCHECK(CalledOnValidThread());
- CHECK_EQ(state_, kOpened);
+ DCHECK_EQ(state_, kOpened);
if (!dispatcher_->StartStream(callback, this)) {
- state_ = kError;
+ state_ = kStartError;
callback->OnError(this, 0);
return;
}
@@ -69,9 +69,10 @@ void AudioOutputProxy::GetVolume(double* volume) {
void AudioOutputProxy::Close() {
DCHECK(CalledOnValidThread());
- DCHECK(state_ == kCreated || state_ == kError || state_ == kOpened);
+ DCHECK(state_ == kCreated || state_ == kOpenError || state_ == kOpened ||
+ state_ == kStartError);
- if (state_ != kCreated)
+ if (state_ != kCreated && state_ != kOpenError)
dispatcher_->CloseStream(this);
scherkus (not reviewing) 2012/09/21 01:24:18 so to confirm... kStartError means Open() was succ
DaleCurtis 2012/09/21 02:57:27 Done.
state_ = kClosed;

Powered by Google App Engine
This is Rietveld 408576698