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

Commit 086b4ac1 authored by Sungsoo Lim's avatar Sungsoo Lim Committed by Automerger Merge Worker
Browse files

Merge "Prevent IAE caused by empty media ids" am: a275da1e am: e77cf5a8...

Merge "Prevent IAE caused by empty media ids" am: a275da1e am: e77cf5a8 am: 029ba770 am: 32c70180

Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/2130114



Change-Id: I2328020fd7a1d9eae9e7955ae25c002d56ce44ca
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 13356fdd 32c70180
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;