aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/decoder_thread.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/decoder_thread.c b/src/decoder_thread.c
index 389634896..822931a61 100644
--- a/src/decoder_thread.c
+++ b/src/decoder_thread.c
@@ -46,7 +46,7 @@ static void decodeStart(void)
dc.current_song = dc.next_song; /* NEED LOCK */
if (!input_stream_open(&inStream, path_max_fs)) {
dc.error = DECODE_ERROR_FILE;
- goto stop_no_close;
+ return;
}
decoder.seeking = false;
@@ -159,9 +159,6 @@ static void decodeStart(void)
stop:
if (close_instream)
input_stream_close(&inStream);
-stop_no_close:
- dc.state = DECODE_STATE_STOP;
- dc.command = DECODE_COMMAND_NONE;
}
static void * decoder_task(mpd_unused void *arg)
@@ -173,6 +170,9 @@ static void * decoder_task(mpd_unused void *arg)
case DECODE_COMMAND_START:
case DECODE_COMMAND_SEEK:
decodeStart();
+
+ dc.state = DECODE_STATE_STOP;
+ dc.command = DECODE_COMMAND_NONE;
break;
case DECODE_COMMAND_STOP: