From 4274653624d94e498ac74ae6822b1c542bd3f425 Mon Sep 17 00:00:00 2001 From: ejurgensen Date: Fri, 22 Dec 2017 18:51:24 +0100 Subject: [PATCH] [pipe] Allow autostart of pipe even if it interrupts other playback (fix for #465) --- src/inputs/pipe.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/inputs/pipe.c b/src/inputs/pipe.c index 3b1b4ff0..43115c49 100644 --- a/src/inputs/pipe.c +++ b/src/inputs/pipe.c @@ -496,15 +496,12 @@ pipe_read_cb(evutil_socket_t fd, short event, void *arg) ret = player_get_status(&status); if (status.id == pipe->id) { - DPRINTF(E_DBG, L_PLAYER, "Pipe '%s' already playing\n", pipe->path); + DPRINTF(E_INFO, L_PLAYER, "Pipe '%s' already playing\n", pipe->path); return; // We are already playing the pipe } - else if ((ret < 0) || (status.status == PLAY_PLAYING)) + else if (ret < 0) { - DPRINTF(E_LOG, L_PLAYER, "Data arrived on pipe '%s' - ignoring, player is busy\n", pipe->path); - // FIXME What to do in this situation? Can't re-add the event, since it - // will trigger right away, but also not good to stop watching the pipe - // like we do right now. + DPRINTF(E_LOG, L_PLAYER, "Pipe autostart of '%s' failed because state of player is unknown\n", pipe->path); return; }