summaryrefslogtreecommitdiff
path: root/libpiano
diff options
context:
space:
mode:
authorLars-Dominik Braun <PromyLOPh@gmail.com>2008-06-10 20:46:41 +0200
committerLars-Dominik Braun <PromyLOPh@gmail.com>2008-06-10 20:46:41 +0200
commit4170ad55dc80e0507ca4113b9adeb025a66ede05 (patch)
tree1f539844ebbe31fd191fbf4cec81d9b4aa469afb /libpiano
parent9424d920f2629738121d14970b511695c22699f9 (diff)
downloadpianobar-4170ad55dc80e0507ca4113b9adeb025a66ede05.tar.gz
pianobar-4170ad55dc80e0507ca4113b9adeb025a66ede05.tar.bz2
pianobar-4170ad55dc80e0507ca4113b9adeb025a66ede05.zip
Try to fix rate track
Sometimes focusTraitId is missing. This would produce (null) which messes up pandora and returns an error. Maybe an empty string is better?
Diffstat (limited to 'libpiano')
-rw-r--r--libpiano/main.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/libpiano/main.c b/libpiano/main.c
index 2727719..d21c91b 100644
--- a/libpiano/main.c
+++ b/libpiano/main.c
@@ -219,7 +219,7 @@ void PianoGetPlaylist (PianoHandle_t *ph, char *stationId) {
}
/* love or ban track (you cannot remove your rating, so PIANO_RATE_NONE is
- * not allowed
+ * not allowed)
* @author PromyLOPh
* @added 2008-06-10
* @public yes
@@ -248,13 +248,16 @@ PianoReturn_t PianoRateTrack (PianoHandle_t *ph, PianoStation_t *station,
"<param><value><boolean>0</boolean></value></param>"
"</params></methodCall>", time (NULL), ph->user.authToken,
station->id, song->musicId, song->matchingSeed, song->userSeed,
- song->focusTraitId, (rating == PIANO_RATE_LOVE) ? 1 : 0);
+ /* sometimes focusTraitId is not set, dunno why yet */
+ (song->focusTraitId == NULL) ? "" : song->focusTraitId,
+ (rating == PIANO_RATE_LOVE) ? 1 : 0);
requestStr = PianoEncryptString (xmlSendBuf);
snprintf (url, sizeof (url), PIANO_RPC_URL
"rid=%s&lid=%s&method=addFeedback&arg1=%s&arg2=%s"
"&arg3=%s&arg4=%s&arg5=%s&arg6=%s&arg7=false", ph->routeId,
ph->user.listenerId, station->id, song->musicId,
- song->matchingSeed, song->userSeed, song->focusTraitId,
+ song->matchingSeed, song->userSeed,
+ (song->focusTraitId == NULL) ? "" : song->focusTraitId,
(rating == PIANO_RATE_LOVE) ? "true" : "false");
PianoHttpPost (ph->curlHandle, url, requestStr, &retStr);
ret = PianoXmlParseRate (retStr);