| Index: media/filters/decrypting_demuxer_stream.cc
|
| diff --git a/media/filters/decrypting_demuxer_stream.cc b/media/filters/decrypting_demuxer_stream.cc
|
| index 4ec6c530b2411efdbb170350c544a22dfa687e7a..67a6f3e77ae0a5d6232f68b31d6958513807f47d 100644
|
| --- a/media/filters/decrypting_demuxer_stream.cc
|
| +++ b/media/filters/decrypting_demuxer_stream.cc
|
| @@ -160,7 +160,8 @@ DecryptingDemuxerStream::~DecryptingDemuxerStream() {
|
| pending_buffer_to_decrypt_ = NULL;
|
| }
|
|
|
| -void DecryptingDemuxerStream::SetDecryptor(Decryptor* decryptor) {
|
| +void DecryptingDemuxerStream::SetDecryptor(Decryptor* decryptor,
|
| + base::Closure done_cb) {
|
| DVLOG(2) << __FUNCTION__;
|
| DCHECK(task_runner_->BelongsToCurrentThread());
|
| DCHECK_EQ(state_, kDecryptorRequested) << state_;
|
| @@ -172,6 +173,8 @@ void DecryptingDemuxerStream::SetDecryptor(Decryptor* decryptor) {
|
| if (!decryptor) {
|
| state_ = kUninitialized;
|
| base::ResetAndReturn(&init_cb_).Run(DECODER_ERROR_NOT_SUPPORTED);
|
| + if (!done_cb.is_null())
|
| + done_cb.Run();
|
| return;
|
| }
|
|
|
| @@ -184,6 +187,8 @@ void DecryptingDemuxerStream::SetDecryptor(Decryptor* decryptor) {
|
|
|
| state_ = kIdle;
|
| base::ResetAndReturn(&init_cb_).Run(PIPELINE_OK);
|
| + if (!done_cb.is_null())
|
| + done_cb.Run();
|
| }
|
|
|
| void DecryptingDemuxerStream::DecryptBuffer(
|
|
|