From 903c078be99cbb14cccbeaff8b1ac6f4f62385ad Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <sebastian@centricular.com>
Date: Thu, 13 Mar 2025 19:55:08 +0200
Subject: [PATCH] mpegtslivesrc: Drop state mutex before sending
 buffers/bufferlists downstream

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2129>
---
 net/mpegtslive/src/mpegtslive/imp.rs | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/net/mpegtslive/src/mpegtslive/imp.rs b/net/mpegtslive/src/mpegtslive/imp.rs
index 4db891cef..b2911e3dc 100644
--- a/net/mpegtslive/src/mpegtslive/imp.rs
+++ b/net/mpegtslive/src/mpegtslive/imp.rs
@@ -747,6 +747,8 @@ impl MpegTsLiveSource {
             buffer.set_dts(new_pts);
         };
 
+        drop(state);
+
         gst::ProxyPad::chain_default(pad, Some(&*self.obj()), buffer)
     }
 
@@ -801,6 +803,8 @@ impl MpegTsLiveSource {
             ControlFlow::Continue(Some(buffer))
         });
 
+        drop(state);
+
         gst::ProxyPad::chain_list_default(pad, Some(&*self.obj()), bufferlist)
     }
 }
-- 
GitLab