Index: media/base/android/media_source_player.cc |
diff --git a/media/base/android/media_source_player.cc b/media/base/android/media_source_player.cc |
index 84c0b43bec05179a924d62abf943deeb89142e95..133e5f71c6c8def3e7ce0ab52758807baf055929 100644 |
--- a/media/base/android/media_source_player.cc |
+++ b/media/base/android/media_source_player.cc |
@@ -74,6 +74,10 @@ MediaSourcePlayer::~MediaSourcePlayer() { |
Release(); |
DCHECK_EQ(!cdm_, !cdm_registration_id_); |
if (cdm_) { |
+ // Cancel previously registered callback (if any). |
+ static_cast<MediaDrmBridge*>(cdm_.get()) |
+ ->SetMediaCryptoReadyCB(MediaDrmBridge::MediaCryptoReadyCB()); |
+ |
static_cast<MediaDrmBridge*>(cdm_.get()) |
->UnregisterPlayer(cdm_registration_id_); |
cdm_registration_id_ = 0; |