From 3cff1b58982a9bbf188d4c884c29971b6c92c48b Mon Sep 17 00:00:00 2001 From: DaveTBlake Date: Thu, 5 Nov 2015 14:59:12 +0000 Subject: Use CMusicInfoTag.GetArtistString() and GetAlbumArtistString to pass song and album artist string out to python addons. Use GetArtistString when calling GetAlbumByName which queries album.strArtists field Check !GetArtistString().empty() rather than GetArtist() (that could be empty when string has values) --- xbmc/interfaces/legacy/InfoTagMusic.cpp | 4 ++-- xbmc/music/MusicDatabase.cpp | 4 ++-- xbmc/music/windows/GUIWindowMusicNav.cpp | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/xbmc/interfaces/legacy/InfoTagMusic.cpp b/xbmc/interfaces/legacy/InfoTagMusic.cpp index fe01cba12b..6b6e416948 100644 --- a/xbmc/interfaces/legacy/InfoTagMusic.cpp +++ b/xbmc/interfaces/legacy/InfoTagMusic.cpp @@ -54,12 +54,12 @@ namespace XBMCAddon String InfoTagMusic::getArtist() { - return StringUtils::Join(infoTag->GetArtist(), g_advancedSettings.m_musicItemSeparator); + return infoTag->GetArtistString(); } String InfoTagMusic::getAlbumArtist() { - return StringUtils::Join(infoTag->GetAlbumArtist(), g_advancedSettings.m_musicItemSeparator); + return infoTag->GetAlbumArtistString(); } String InfoTagMusic::getAlbum() diff --git a/xbmc/music/MusicDatabase.cpp b/xbmc/music/MusicDatabase.cpp index ef3583513c..a483412093 100644 --- a/xbmc/music/MusicDatabase.cpp +++ b/xbmc/music/MusicDatabase.cpp @@ -5307,7 +5307,7 @@ void CMusicDatabase::ImportFromXML(const std::string &xmlFile) CAlbum importedAlbum; importedAlbum.Load(entry); strTitle = importedAlbum.strAlbum; - int idAlbum = GetAlbumByName(importedAlbum.strAlbum, importedAlbum.GetAlbumArtist()); + int idAlbum = GetAlbumByName(importedAlbum.strAlbum, importedAlbum.GetAlbumArtistString()); if (idAlbum > -1) { CAlbum album; @@ -5399,7 +5399,7 @@ void CMusicDatabase::SetPropertiesForFileItem(CFileItem& item) int idAlbum = item.GetMusicInfoTag()->GetAlbumId(); if (idAlbum <= 0) idAlbum = GetAlbumByName(item.GetMusicInfoTag()->GetAlbum(), - item.GetMusicInfoTag()->GetArtist()); + item.GetMusicInfoTag()->GetArtistString()); if (idAlbum > -1) { CAlbum album; diff --git a/xbmc/music/windows/GUIWindowMusicNav.cpp b/xbmc/music/windows/GUIWindowMusicNav.cpp index 10a11e63de..a0d6ef167c 100644 --- a/xbmc/music/windows/GUIWindowMusicNav.cpp +++ b/xbmc/music/windows/GUIWindowMusicNav.cpp @@ -549,16 +549,16 @@ void CGUIWindowMusicNav::GetContextButtons(int itemNumber, CContextButtons &butt // 4. specific per album buttons.Add(CONTEXT_BUTTON_SET_CONTENT, 20195); } - if (item->HasMusicInfoTag() && item->GetMusicInfoTag()->GetArtist().size() > 0) + if (item->HasMusicInfoTag() && !item->GetMusicInfoTag()->GetArtistString().empty()) { CVideoDatabase database; database.Open(); if (database.GetMatchingMusicVideo(item->GetMusicInfoTag()->GetArtistString()) > -1) buttons.Add(CONTEXT_BUTTON_GO_TO_ARTIST, 20400); } - if (item->HasMusicInfoTag() && item->GetMusicInfoTag()->GetArtist().size() > 0 && - item->GetMusicInfoTag()->GetAlbum().size() > 0 && - item->GetMusicInfoTag()->GetTitle().size() > 0) + if (item->HasMusicInfoTag() && !item->GetMusicInfoTag()->GetArtistString().empty() && + !item->GetMusicInfoTag()->GetAlbum().empty() && + !item->GetMusicInfoTag()->GetTitle().empty()) { CVideoDatabase database; database.Open(); -- cgit v1.2.3