File 0039-dmix-plugin-drain-quickfix-for-the-previous-patch.patch of Package alsa.openSUSE_Leap_42.2_Update

From e4377b16454f3b7b222613a571bf4244ebd28e56 Mon Sep 17 00:00:00 2001
From: Jaroslav Kysela <perex@perex.cz>
Date: Mon, 20 Mar 2017 08:41:53 +0100
Subject: [PATCH 39/43] dmix plugin: drain - quickfix for the previous patch

---
 src/pcm/pcm_dmix.c |   12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

--- a/src/pcm/pcm_dmix.c
+++ b/src/pcm/pcm_dmix.c
@@ -674,16 +674,16 @@ static int __snd_pcm_dmix_drain(snd_pcm_
 			case SND_PCM_STATE_SUSPENDED:
 				err = -ESTRPIPE;
 				goto done;
-			case SND_PCM_STATE_DRAINING:
-				if (pcm->mode & SND_PCM_NONBLOCK) {
-					err = -EAGAIN;
-					goto done;
-				}
-				break;
 			default:
 				break;
 			}
 		}
+		if (pcm->mode & SND_PCM_NONBLOCK) {
+			if (dmix->state == SND_PCM_STATE_DRAINING) {
+				err = -EAGAIN;
+				goto done;
+			}
+		}
 	} while (dmix->state == SND_PCM_STATE_DRAINING);
 done:
 	pcm->stop_threshold = stop_threshold;
openSUSE Build Service is sponsored by