summaryrefslogtreecommitdiff
path: root/src/ui.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui.c')
-rw-r--r--src/ui.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/ui.c b/src/ui.c
index 0512f36..5c4e42d 100644
--- a/src/ui.c
+++ b/src/ui.c
@@ -1,5 +1,5 @@
/*
-Copyright (c) 2008-2013
+Copyright (c) 2008-2018
Lars-Dominik Braun <lars@6xq.net>
Permission is hereby granted, free of charge, to any person obtaining a copy
@@ -814,7 +814,7 @@ size_t BarUiListSongs (const BarApp_t * const app,
*/
void BarUiStartEventCmd (const BarSettings_t *settings, const char *type,
const PianoStation_t *curStation, const PianoSong_t *curSong,
- const player_t * const player, PianoStation_t *stations,
+ player_t * const player, PianoStation_t *stations,
PianoReturn_t pRet, CURLcode wRet) {
pid_t chld;
int pipeFd[2];
@@ -855,6 +855,11 @@ void BarUiStartEventCmd (const BarSettings_t *settings, const char *type,
songStation = PianoFindStationById (stations, curSong->stationId);
}
+ pthread_mutex_lock (&player->lock);
+ const unsigned int songDuration = player->songDuration;
+ const unsigned int songPlayed = player->songPlayed;
+ pthread_mutex_unlock (&player->lock);
+
fprintf (pipeWriteFd,
"artist=%s\n"
"title=%s\n"
@@ -880,8 +885,8 @@ void BarUiStartEventCmd (const BarSettings_t *settings, const char *type,
PianoErrorToStr (pRet),
wRet,
curl_easy_strerror (wRet),
- player->songDuration,
- player->songPlayed,
+ songDuration,
+ songPlayed,
curSong == NULL ? PIANO_RATE_NONE : curSong->rating,
curSong == NULL ? "" : curSong->detailUrl
);