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

Commit bce14220 authored by Jakub Tyszkowski's avatar Jakub Tyszkowski
Browse files

mcp: Fix handling incomplete metadata

Fixes sending null objects for incomplete track metadata.

Bug: 197729145
Tag: #feature
Test: compilation
Sponsor: jpawlowski@
Change-Id: I57845b7ece0861295b14d2a6e7a7912ef9f40e05
parent ea658505
Loading
Loading
Loading
Loading
+12 −4
Original line number Diff line number Diff line
@@ -126,7 +126,10 @@ public class MediaControlProfile implements MediaControlServiceCallbacks {
        Map<PlayerStateField, Object> state_map = new HashMap<>();

        if (mMediaPlayerList.getActivePlayer() != mLastActivePlayer) {
            state_map.put(PlayerStateField.PLAYER_NAME, getCurrentPlayerName());
            String playerName = getCurrentPlayerName();
            if (playerName != null) {
                state_map.put(PlayerStateField.PLAYER_NAME, playerName);
            }
        }

        if (stateChanged) {
@@ -159,9 +162,14 @@ public class MediaControlProfile implements MediaControlServiceCallbacks {
                            + mCurrentData.metadata.duration);
                }

                if (mCurrentData.metadata.duration != null) {
                    state_map.put(PlayerStateField.TRACK_DURATION,
                            Long.valueOf(mCurrentData.metadata.duration));
                }

                if (mCurrentData.metadata.title != null) {
                    state_map.put(PlayerStateField.TRACK_TITLE, mCurrentData.metadata.title);
                }

                // Update the position if track has changed
                if (mCurrentData.state != null) {