From a6749787cb2d61d0c893eda60d93cc58ef49a8b1 Mon Sep 17 00:00:00 2001 From: Andre Noll Date: Mon, 21 Mar 2016 19:51:08 +0000 Subject: [PATCH] playlist: Do not update score if no playlist is open. This bug caused the score of the current audio file to be updated twice in mood mode since both the mood event handler and playlist event handler honor afs events and update the score. We fix the bug by moving the check whether a playlist is open to the top of the playlist event handler, similar to the check in the mood event handler of mood.c. If no playlist is open, we now return early from the playlist event handler, ignoring all afs events. --- playlist.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/playlist.c b/playlist.c index c822e080..6441aca7 100644 --- a/playlist.c +++ b/playlist.c @@ -205,8 +205,6 @@ static int handle_audio_file_event(enum afs_events event, void *data) char *new_path; const struct osl_row *row = data; - if (!current_playlist.name) - return 1; if (event == AUDIO_FILE_RENAME) { ret = row_belongs_to_score_table(row, NULL); if (ret < 0) @@ -251,7 +249,9 @@ int playlists_event_handler(enum afs_events event, int ret; struct afsi_change_event_data *aced = data; - switch(event) { + if (!current_playlist.name) + return 1; + switch (event) { case AFSI_CHANGE: return playlist_update_audio_file(aced->aft_row); case AUDIO_FILE_RENAME: -- 2.39.5