diff --git a/library/core/src/main/java/com/google/android/exoplayer2/drm/DefaultDrmSession.java b/library/core/src/main/java/com/google/android/exoplayer2/drm/DefaultDrmSession.java index 037ce49171..2f27ad8c08 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/drm/DefaultDrmSession.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/drm/DefaultDrmSession.java @@ -321,14 +321,10 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull; mediaDrm.closeSession(sessionId); sessionId = null; } - dispatchEvent(DrmSessionEventListener.EventDispatcher::drmSessionReleased); } if (eventDispatcher != null) { - if (isOpen()) { - // If the session is still open then send the release event only to the provided dispatcher - // before removing it. - eventDispatcher.drmSessionReleased(); - } + // Acquire and release events are only sent to the provided dispatcher. + eventDispatcher.drmSessionReleased(); eventDispatchers.remove(eventDispatcher); } referenceCountListener.onReferenceCountDecremented(this, referenceCount);