From 678314534a08dbcbc1c642446f1af899a2108b57 Mon Sep 17 00:00:00 2001
From: Max Kellermann <max@duempel.org>
Date: Wed, 29 Oct 2008 22:17:42 +0100
Subject: output: always call cancel() before stop()

Stopping an audio output device without cancelling its buffer doesn't
make sense.  Combine the two operations, which saves several cancel
calls.
---
 src/player_thread.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

(limited to 'src/player_thread.c')

diff --git a/src/player_thread.c b/src/player_thread.c
index 0275b680a..48702b6a3 100644
--- a/src/player_thread.c
+++ b/src/player_thread.c
@@ -152,7 +152,6 @@ static void processDecodeInput(struct player *player)
 	case PLAYER_COMMAND_PAUSE:
 		player->paused = !player->paused;
 		if (player->paused) {
-			dropBufferedAudio();
 			audio_output_pause_all();
 			pc.state = PLAYER_STATE_PAUSE;
 		} else {
@@ -298,10 +297,9 @@ static void do_play(void)
 					break;
 				}
 
-				if (player.paused) {
-					dropBufferedAudio();
+				if (player.paused)
 					closeAudioDevice();
-				}
+
 				pc.totalTime = dc.totalTime;
 				pc.audio_format = dc.audioFormat;
 				play_audio_format = ob.audioFormat;
-- 
cgit v1.2.3