splitmuxsrc: Mark running=false on shutdown.

Make sure that any late gst_element_call_async() callbacks
know that the elements is shutting down and bail out instead
of operating on the element we're trying to stop.

Fixes a spurious test failure in elements_splitmuxsrc

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/798>
This commit is contained in:
Jan Schmidt 2020-10-30 03:36:51 +11:00 committed by Jan Schmidt
parent f0c24319de
commit 5ac4fdeb7a

View file

@ -993,7 +993,7 @@ gst_splitmux_src_stop (GstSplitMuxSrc * splitmux)
SPLITMUX_SRC_LOCK (splitmux);
if (!splitmux->running)
goto out;
splitmux->running = FALSE;
GST_DEBUG_OBJECT (splitmux, "Stopping");
SPLITMUX_SRC_UNLOCK (splitmux);
@ -1028,7 +1028,6 @@ gst_splitmux_src_stop (GstSplitMuxSrc * splitmux)
splitmux->num_parts = 0;
splitmux->num_prepared_parts = 0;
splitmux->num_created_parts = 0;
splitmux->running = FALSE;
splitmux->total_duration = GST_CLOCK_TIME_NONE;
/* Reset playback segment */
gst_segment_init (&splitmux->play_segment, GST_FORMAT_TIME);