summaryrefslogtreecommitdiffstats
path: root/recipes-multimedia/musicpd/files/0002-output-PipeWire-skip-Cancel-if-already-drained.patch
blob: a01a04a0275ca7e4b6d39867ae201eb9bd91b339 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
From 493677ff81e708133f87e15157c5dd5131adad48 Mon Sep 17 00:00:00 2001
From: Max Kellermann <max.kellermann@gmail.com>
Date: Sat, 9 Jul 2022 00:53:52 +0200
Subject: [PATCH] output/PipeWire: skip Cancel() if already drained

Upstream-Status: Backport [https://github.com/MusicPlayerDaemon/MPD/commit/493677ff81e708133f87e15157c5dd5131adad48]
Signed-off-by: Scott Murray <scott.murray@konsulko.com>

---
diff --git a/src/output/plugins/PipeWireOutputPlugin.cxx b/src/output/plugins/PipeWireOutputPlugin.cxx
index ccdf5c0e4..7184edfa5 100644
--- a/src/output/plugins/PipeWireOutputPlugin.cxx
+++ b/src/output/plugins/PipeWireOutputPlugin.cxx
@@ -892,6 +892,9 @@ PipeWireOutput::Cancel() noexcept
 	const PipeWire::ThreadLoopLock lock(thread_loop);
 	interrupted = false;
 
+	if (drained)
+		return;
+
 	ring_buffer->reset();
 }
 
-- 
2.39.0