decoder: ignore SEEK commands during initialization

When the decoder receives a SEEK during initialization, it should
ignore that for now.  The old code made most decoders abort.
This commit is contained in:
Max Kellermann 2008-11-13 02:06:55 +01:00
parent 1178e485cb
commit 998d9a8225

View File

@ -109,8 +109,11 @@ size_t decoder_read(struct decoder *decoder,
while (true) { while (true) {
/* XXX don't allow decoder==NULL */ /* XXX don't allow decoder==NULL */
if (decoder != NULL && if (decoder != NULL &&
/* ignore the SEEK command during initialization,
the plugin should handle that after it has
initialized successfully */
(dc.command != DECODE_COMMAND_SEEK || (dc.command != DECODE_COMMAND_SEEK ||
!decoder->seeking) && (dc.state != DECODE_STATE_START && !decoder->seeking)) &&
dc.command != DECODE_COMMAND_NONE) dc.command != DECODE_COMMAND_NONE)
return 0; return 0;