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

Commit 44616767 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Prevent IAE caused by empty media ids" into tm-dev am: 287e72fd

parents 544aa57e 287e72fd
Loading
Loading
Loading
Loading
+12 −3
Original line number Diff line number Diff line
@@ -385,14 +385,23 @@ public class MediaPlayerList {
        }

        int playerIndex = Integer.parseInt(mediaId.substring(0, 2));
        String itemId = mediaId.substring(2);

        if (!haveMediaBrowser(playerIndex)) {
            e("playFolderItem: Do not have the a browsable player with ID " + playerIndex);
            return;
        }

        mBrowsablePlayers.get(playerIndex).playItem(itemId);
        BrowsedPlayerWrapper wrapper = mBrowsablePlayers.get(playerIndex);
        String itemId = mediaId.substring(2);
        if (TextUtils.isEmpty(itemId)) {
            itemId = wrapper.getRootId();
            if (TextUtils.isEmpty(itemId)) {
                e("playFolderItem: Failed to start playback with an empty media id.");
                return;
            }
            Log.i(TAG, "playFolderItem: Empty media id, trying with the root id for "
                    + wrapper.getPackageName());
        }
        wrapper.playItem(itemId);
    }

    void getFolderItemsMediaPlayerList(GetFolderItemsCallback cb) {
+1 −1
Original line number Diff line number Diff line
@@ -196,7 +196,7 @@ public class AvrcpNativeInterface {
    }

    void playItem(int playerId, boolean nowPlaying, String mediaId) {
        d("playItem: playerId=" + playerId + " nowPlaying=" + nowPlaying + " mediaId" + mediaId);
        d("playItem: playerId=" + playerId + " nowPlaying=" + nowPlaying + " mediaId=" + mediaId);
        if (mAvrcpService == null) {
            Log.d(TAG, "playItem: AvrcpTargetService is null");
            return;