From e38e8eb6365e6c5534a5362b25746279a79c8a1a Mon Sep 17 00:00:00 2001
From: Max Kellermann <max@duempel.org>
Date: Mon, 22 Jun 2015 14:40:47 +0200
Subject: decoder/vorbis: check STOP before entering the loop

---
 src/decoder/plugins/VorbisDecoderPlugin.cxx | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

(limited to 'src')

diff --git a/src/decoder/plugins/VorbisDecoderPlugin.cxx b/src/decoder/plugins/VorbisDecoderPlugin.cxx
index d569f747e..c6377b9ab 100644
--- a/src/decoder/plugins/VorbisDecoderPlugin.cxx
+++ b/src/decoder/plugins/VorbisDecoderPlugin.cxx
@@ -263,7 +263,7 @@ vorbis_stream_decode(Decoder &decoder,
 	unsigned kbit_rate = 0;
 
 	DecoderCommand cmd = decoder_get_command(decoder);
-	do {
+	while (cmd != DecoderCommand::STOP) {
 		if (cmd == DecoderCommand::SEEK) {
 			auto seek_where = decoder_seek_where_frame(decoder);
 			if (0 == ov_pcm_seek_page(&vf, seek_where)) {
@@ -332,7 +332,7 @@ vorbis_stream_decode(Decoder &decoder,
 		cmd = decoder_data(decoder, input_stream,
 				   buffer, nbytes,
 				   kbit_rate);
-	} while (cmd != DecoderCommand::STOP);
+	}
 
 	ov_clear(&vf);
 }
-- 
cgit v1.2.3