From ba60fbc4274e85fb63d373207f525aa57bc75eb3 Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Sat, 22 Oct 2011 16:34:48 +0200 Subject: Support seed stations Fixes #165 --- src/libpiano/piano.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/libpiano/piano.c') diff --git a/src/libpiano/piano.c b/src/libpiano/piano.c index d6071f2..9a7e8d3 100644 --- a/src/libpiano/piano.c +++ b/src/libpiano/piano.c @@ -91,6 +91,7 @@ void PianoDestroySearchResult (PianoSearchResult_t *searchResult) { void PianoDestroyStation (PianoStation_t *station) { free (station->name); free (station->id); + free (station->seedId); memset (station, 0, sizeof (station)); } @@ -141,6 +142,7 @@ void PianoDestroyStationInfo (PianoStationInfo_t *info) { PianoDestroyPlaylist (info->feedback); PianoDestroyPlaylist (info->songSeeds); PianoDestroyArtists (info->artistSeeds); + PianoDestroyStations (info->stationSeeds); } /* destroy genre linked list @@ -769,12 +771,15 @@ PianoReturn_t PianoRequest (PianoHandle_t *ph, PianoRequest_t *req, char *seedId = NULL; assert (reqData != NULL); - assert (reqData->song != NULL || reqData->artist != NULL); + assert (reqData->song != NULL || reqData->artist != NULL || + reqData->station != NULL); if (reqData->song != NULL) { seedId = reqData->song->seedId; } else if (reqData->artist != NULL) { seedId = reqData->artist->seedId; + } else if (reqData->station != NULL) { + seedId = reqData->station->seedId; } assert (seedId != NULL); -- cgit v1.2.3