From 9e0f7dcd1a9c000a78cf283af4fa593e808ed374 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Tue, 26 Aug 2008 08:27:04 +0200 Subject: added dc_command_finished() dc_command_finished() is invoked by the decoder thread when it has finished a command (sent by the player thread). It resets dc.command and wakes up the player thread. This combination was used at a lot of places, and by introducing this function, the code will be more readable. --- src/inputPlugins/mp3_plugin.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) (limited to 'src/inputPlugins/mp3_plugin.c') diff --git a/src/inputPlugins/mp3_plugin.c b/src/inputPlugins/mp3_plugin.c index 30515f303..4288f85de 100644 --- a/src/inputPlugins/mp3_plugin.c +++ b/src/inputPlugins/mp3_plugin.c @@ -854,8 +854,7 @@ static int mp3Read(mp3DecodeData * data, ReplayGainInfo ** replayGainInfo) data->outputPtr = data->outputBuffer; ob_clear(); data->muteFrame = 0; - dc.command = DECODE_COMMAND_NONE; - decoder_wakeup_player(); + dc_command_finished(); } break; default: @@ -968,14 +967,12 @@ static int mp3Read(mp3DecodeData * data, ReplayGainInfo ** replayGainInfo) } else dc.seekError = 1; data->muteFrame = 0; - dc.command = DECODE_COMMAND_NONE; - decoder_wakeup_player(); + dc_command_finished(); } } else if (dc.command == DECODE_COMMAND_SEEK && !data->inStream->seekable) { - dc.command = DECODE_COMMAND_NONE; dc.seekError = 1; - decoder_wakeup_player(); + dc_command_finished(); } } @@ -1084,8 +1081,7 @@ static int mp3_decode(InputStream * inStream) if (dc.command == DECODE_COMMAND_SEEK && data.muteFrame == MUTEFRAME_SEEK) { ob_clear(); - dc.command = DECODE_COMMAND_NONE; - decoder_wakeup_player(); + dc_command_finished(); } ob_flush(); -- cgit v1.2.3