Fixed regression on artist/release artist handling + fixed bug when firing a signal on still connected but deleted listener

This commit is contained in:
emeric
2020-11-12 17:12:08 +01:00
parent 6a4bbd6acf
commit 6240ccf747
20 changed files with 81 additions and 49 deletions
+8 -1
View File
@@ -316,7 +316,8 @@ trackToResponseNode(const Track::pointer& track, Session& dbSession, const User:
trackResponse.setAttribute("coverArt", IdToString({Id::Type::Track, track.id()}));
auto artists {track->getArtists({TrackArtistLinkType::Artist})};
const std::vector<Artist::pointer>& artists {track->getArtists({TrackArtistLinkType::Artist})};
LMS_LOG(API_SUBSONIC, DEBUG) << "Artists count = " << artists.size();
if (!artists.empty())
{
trackResponse.setAttribute("artist", getArtistNames(artists));
@@ -954,6 +955,9 @@ handleGetArtistsRequest(RequestContext& context)
case User::SubsonicArtistListMode::ReleaseArtists:
linkType = TrackArtistLinkType::ReleaseArtist;
break;
case User::SubsonicArtistListMode::TrackArtists:
linkType = TrackArtistLinkType::Artist;
break;
}
bool more {};
@@ -1098,6 +1102,9 @@ handleGetIndexesRequest(RequestContext& context)
case User::SubsonicArtistListMode::ReleaseArtists:
linkType = TrackArtistLinkType::ReleaseArtist;
break;
case User::SubsonicArtistListMode::TrackArtists:
linkType = TrackArtistLinkType::Artist;
break;
}
bool more {};