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

Unified Diff: media/filters/decrypting_demuxer_stream.cc

Issue 416333011: Allow setContentDecryptionModule() to get called when setting is done. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 5 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/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(

Powered by Google App Engine
This is Rietveld 408576698