decoder_api: check state before emitting initial seek command

This fixes seeking in the vorbis decoder during MPD startup.
This commit is contained in:
Max Kellermann
2012-02-13 18:27:43 +01:00
parent 7855a32579
commit e1e3ce980a
2 changed files with 8 additions and 0 deletions

View File

@@ -89,6 +89,12 @@ decoder_prepare_initial_seek(struct decoder *decoder)
const struct decoder_control *dc = decoder->dc;
assert(dc->pipe != NULL);
if (dc->state != DECODE_STATE_DECODE)
/* wait until the decoder has finished initialisation
(reading file headers etc.) before emitting the
virtual "SEEK" command */
return false;
if (decoder->initial_seek_running)
/* initial seek has already begun - override any other
command */