decoder_api: don't copy tag to pipe during initial seek

Fixes one more assertion failure.
This commit is contained in:
Max Kellermann 2011-10-05 22:53:36 +02:00
parent f185b35088
commit 99d4ae0c1a

View File

@ -438,6 +438,14 @@ decoder_tag(G_GNUC_UNUSED struct decoder *decoder, struct input_stream *is,
update_stream_tag(decoder, is); update_stream_tag(decoder, is);
/* check if we're seeking */
if (decoder->initial_seek_pending)
/* during initial seek, no music chunk must be created
until seeking is finished; skip the rest of the
function here */
return DECODE_COMMAND_SEEK;
/* send tag to music pipe */ /* send tag to music pipe */
if (decoder->stream_tag != NULL) { if (decoder->stream_tag != NULL) {
@ -451,9 +459,6 @@ decoder_tag(G_GNUC_UNUSED struct decoder *decoder, struct input_stream *is,
/* send only the decoder tag */ /* send only the decoder tag */
cmd = do_send_tag(decoder, is, tag); cmd = do_send_tag(decoder, is, tag);
if (cmd == DECODE_COMMAND_NONE)
cmd = decoder_get_virtual_command(decoder);
return cmd; return cmd;
} }