diff --git a/src/libs/subsonic/impl/responses/Artist.cpp b/src/libs/subsonic/impl/responses/Artist.cpp index be2b9a4f..3ed06125 100644 --- a/src/libs/subsonic/impl/responses/Artist.cpp +++ b/src/libs/subsonic/impl/responses/Artist.cpp @@ -63,7 +63,7 @@ namespace API::Subsonic case TrackArtistLinkType::Lyricist: return "lyricist"; case TrackArtistLinkType::Mixer: return "mixer"; case TrackArtistLinkType::Performer: return "performer"; - case TrackArtistLinkType::Producer: return "producrer"; + case TrackArtistLinkType::Producer: return "producer"; case TrackArtistLinkType::ReleaseArtist: return "albumartist"; case TrackArtistLinkType::Remixer: return "remixer"; case TrackArtistLinkType::Writer: return "writer"; diff --git a/src/libs/subsonic/impl/responses/Song.cpp b/src/libs/subsonic/impl/responses/Song.cpp index 9cc730b7..af8b742d 100644 --- a/src/libs/subsonic/impl/responses/Song.cpp +++ b/src/libs/subsonic/impl/responses/Song.cpp @@ -165,7 +165,8 @@ namespace API::Subsonic for (const TrackArtistLinkId linkId : TrackArtistLink::find(dbSession, TrackArtistLink::FindParameters{}.setTrack(track->getId())).results) { TrackArtistLink::pointer link{ TrackArtistLink::find(dbSession, linkId) }; - if (link) + // Don't report artists nor release artists as they are set in dedicated fields + if (link && link->getType() != TrackArtistLinkType::Artist && link->getType() != TrackArtistLinkType::ReleaseArtist) trackResponse.addArrayChild("contributors", createContributorNode(link)); }