aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Marshall <jmarshall@xbmc.org>2013-11-30 19:00:51 +1300
committerJonathan Marshall <jmarshall@xbmc.org>2013-12-24 13:48:59 +1300
commit61c6a2cadc95ae23a8b56ec4d550bfb39f59858a (patch)
tree48de9f61bf48d866e8b597e9c9e4965798df763f
parente5f8755c0cdacf3f8e78c7a0326bbefa74d61d5f (diff)
[musicdb] construct the artist string from the artistCredits
-rw-r--r--xbmc/music/MusicDatabase.cpp16
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,