Index: media/filters/decrypting_audio_decoder.cc |
diff --git a/media/filters/decrypting_audio_decoder.cc b/media/filters/decrypting_audio_decoder.cc |
index 79d82093302c313de8265bdf27408a76d2f0429e..aae0afa0682e54bfd6b1d1153e86924cd18a3780 100644 |
--- a/media/filters/decrypting_audio_decoder.cc |
+++ b/media/filters/decrypting_audio_decoder.cc |
@@ -166,7 +166,8 @@ DecryptingAudioDecoder::~DecryptingAudioDecoder() { |
base::ResetAndReturn(&reset_cb_).Run(); |
} |
-void DecryptingAudioDecoder::SetDecryptor(Decryptor* decryptor) { |
+void DecryptingAudioDecoder::SetDecryptor(Decryptor* decryptor, |
+ const base::Closure& done_cb) { |
DVLOG(2) << "SetDecryptor()"; |
DCHECK(task_runner_->BelongsToCurrentThread()); |
DCHECK_EQ(state_, kDecryptorRequested) << state_; |
@@ -178,12 +179,14 @@ void DecryptingAudioDecoder::SetDecryptor(Decryptor* decryptor) { |
if (!decryptor) { |
base::ResetAndReturn(&init_cb_).Run(DECODER_ERROR_NOT_SUPPORTED); |
state_ = kError; |
+ done_cb.Run(); |
ddorwin
2014/07/30 22:35:46
Shouldn't this reject the promise?
How can we get
jrummell
2014/08/01 22:09:42
This is called with NULL if there is a previous de
|
return; |
} |
decryptor_ = decryptor; |
InitializeDecoder(); |
+ done_cb.Run(); |
} |
void DecryptingAudioDecoder::InitializeDecoder() { |