Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8c7e2635 authored by Joonghong Park's avatar Joonghong Park
Browse files

Fix BT keeping wrong state issue



When media session (such as music player app) is closed unexpectedly,
BT state is keeping wrong state even though there is no
music streaming.
This fixes this issue by adding a simple logic to check destruction
of media session then return null when requesting Playback state.

Bug: 125099920
Test: Test on phone and carkit as a remote node
Change-Id: I4eac1d2ad0848ad515f36e9352774d0fe5505aa5
Signed-off-by: default avatarJoonghong Park <joonghong.park@samsung.com>
parent 36538bb3
Loading
Loading
Loading
Loading
+3 −0
Original line number Original line Diff line number Diff line
@@ -669,6 +669,9 @@ public class MediaSessionRecord implements IBinder.DeathRecipient {
        PlaybackState state;
        PlaybackState state;
        long duration = -1;
        long duration = -1;
        synchronized (mLock) {
        synchronized (mLock) {
            if (mDestroyed) {
                return null;
            }
            state = mPlaybackState;
            state = mPlaybackState;
            if (mMetadata != null && mMetadata.containsKey(MediaMetadata.METADATA_KEY_DURATION)) {
            if (mMetadata != null && mMetadata.containsKey(MediaMetadata.METADATA_KEY_DURATION)) {
                duration = mMetadata.getLong(MediaMetadata.METADATA_KEY_DURATION);
                duration = mMetadata.getLong(MediaMetadata.METADATA_KEY_DURATION);