diff options
-rw-r--r-- | xbmc/music/MusicDatabase.cpp | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/xbmc/music/MusicDatabase.cpp b/xbmc/music/MusicDatabase.cpp index a87a656ed6..65dcf3510f 100644 --- a/xbmc/music/MusicDatabase.cpp +++ b/xbmc/music/MusicDatabase.cpp @@ -384,13 +384,21 @@ int CMusicDatabase::AddAlbumInfoSong(int idAlbum, const CSong& song) } } +std::string GetArtistString(const VECARTISTCREDITS &credits) +{ + std::string artistString; + for (VECARTISTCREDITS::const_iterator i = credits.begin(); i != credits.end(); ++i) + artistString += i->GetArtist() + i->GetJoinPhrase(); + return artistString; +} + bool CMusicDatabase::AddAlbum(CAlbum& album) { BeginTransaction(); album.idAlbum = AddAlbum(album.strAlbum, album.strMusicBrainzAlbumID, - album.GetArtistString(), + GetArtistString(album.artistCredits), album.GetGenreString(), album.iYear, album.bCompilation); @@ -414,7 +422,7 @@ bool CMusicDatabase::AddAlbum(CAlbum& album) song->strTitle, song->strMusicBrainzTrackID, song->strFileName, song->strComment, song->strThumb, - StringUtils::Join(song->artist, g_advancedSettings.m_musicItemSeparator), song->genre, + GetArtistString(song->artistCredits), song->genre, song->iTrack, song->iDuration, song->iYear, song->iTimesPlayed, song->iStartOffset, song->iEndOffset, @@ -451,7 +459,7 @@ bool CMusicDatabase::UpdateAlbum(CAlbum& album) UpdateAlbum(album.idAlbum, album.strAlbum, album.strMusicBrainzAlbumID, - album.GetArtistString(), album.GetGenreString(), + GetArtistString(album.artistCredits), album.GetGenreString(), StringUtils::Join(album.moods, g_advancedSettings.m_musicItemSeparator).c_str(), StringUtils::Join(album.styles, g_advancedSettings.m_musicItemSeparator).c_str(), StringUtils::Join(album.themes, g_advancedSettings.m_musicItemSeparator).c_str(), @@ -482,7 +490,7 @@ bool CMusicDatabase::UpdateAlbum(CAlbum& album) song->strFileName, song->strComment, song->strThumb, - StringUtils::Join(song->artist, g_advancedSettings.m_musicItemSeparator), + GetArtistString(song->artistCredits), song->genre, song->iTrack, song->iDuration, |