adaptivedemux2: Move API lock usage
authorEdward Hervey <edward@centricular.com>
Thu, 9 Feb 2023 13:45:01 +0000 (14:45 +0100)
committerEdward Hervey <bilboed@bilboed.com>
Fri, 23 Jun 2023 06:51:07 +0000 (08:51 +0200)
It is not needed so early

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4922>

subprojects/gst-plugins-good/ext/adaptivedemux2/gstadaptivedemux.c

index 00c9c9c..fddc3de 100644 (file)
@@ -2016,13 +2016,10 @@ gst_adaptive_demux_handle_seek_event (GstAdaptiveDemux * demux,
 
   GST_INFO_OBJECT (demux, "Received seek event");
 
-  GST_API_LOCK (demux);
-
   gst_event_parse_seek (event, &rate, &format, &flags, &start_type, &start,
       &stop_type, &stop);
 
   if (format != GST_FORMAT_TIME) {
-    GST_API_UNLOCK (demux);
     GST_WARNING_OBJECT (demux,
         "Adaptive demuxers only support TIME-based seeking");
     gst_event_unref (event);
@@ -2031,15 +2028,16 @@ gst_adaptive_demux_handle_seek_event (GstAdaptiveDemux * demux,
 
   if (flags & GST_SEEK_FLAG_SEGMENT) {
     GST_FIXME_OBJECT (demux, "Handle segment seeks");
-    GST_API_UNLOCK (demux);
     gst_event_unref (event);
     return FALSE;
   }
 
   seqnum = gst_event_get_seqnum (event);
 
+  GST_API_LOCK (demux);
   if (!GST_ADAPTIVE_SCHEDULER_LOCK (demux)) {
     GST_LOG_OBJECT (demux, "Failed to acquire scheduler context");
+    GST_API_UNLOCK (demux);
     return FALSE;
   }