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

Commit 43b076bb authored by Mike Lockwood's avatar Mike Lockwood
Browse files

MediaScanner: Fix UnsupportedOperationException when scanning internal media



The media scanner was crashing while tring to insert genre data in the internal
media database, which does not support genres.
This resulted in some or all of the built in ringtones being unavailable

Bug: 5124718

Change-Id: Ib306348dd9808e59477b327b4adcb413957d8d24
Signed-off-by: default avatarMike Lockwood <lockwood@android.com>
parent 0dc8bb25
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -307,7 +307,7 @@ public class MediaScanner
    private Uri mThumbsUri;
    private Uri mPlaylistsUri;
    private Uri mFilesUri;
    private boolean mProcessPlaylists;
    private boolean mProcessPlaylists, mProcessGenres;
    private int mMtpObjectHandle;

    private final String mExternalStoragePath;
@@ -612,7 +612,8 @@ public class MediaScanner
                mAlbum = value.trim();
            } else if (name.equalsIgnoreCase("composer") || name.startsWith("composer;")) {
                mComposer = value.trim();
            } else if (name.equalsIgnoreCase("genre") || name.startsWith("genre;")) {
            } else if (mProcessGenres &&
                    (name.equalsIgnoreCase("genre") || name.startsWith("genre;"))) {
                mGenre = getGenreName(value);
            } else if (name.equalsIgnoreCase("year") || name.startsWith("year;")) {
                mYear = parseSubstring(value, 0, 0);
@@ -1151,6 +1152,7 @@ public class MediaScanner
        if (!volumeName.equals("internal")) {
            // we only support playlists on external media
            mProcessPlaylists = true;
            mProcessGenres = true;
            mPlaylistsUri = Playlists.getContentUri(volumeName);

            mCaseInsensitivePaths = true;