mirror of
https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs.git
synced 2024-11-29 06:50:59 +00:00
uriplaylistbin: handle waiting items no longer being set
ab96219c19
broke some assertions as
waiting items are now unset when shutting down the element.
This commit is contained in:
parent
518e43fc5f
commit
5dab4bc502
1 changed files with 9 additions and 2 deletions
|
@ -1232,7 +1232,10 @@ impl UriPlaylistBin {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
let item = state.waiting_for_pads.clone().unwrap();
|
let item = match state.waiting_for_pads.as_ref() {
|
||||||
|
Some(item) => item.clone(),
|
||||||
|
None => return, // element is being shutdown
|
||||||
|
};
|
||||||
|
|
||||||
// Parse the pad name to extract the stream type and its index.
|
// Parse the pad name to extract the stream type and its index.
|
||||||
// We could get the type from the Stream object from the StreamStart sticky event but we'd still have
|
// We could get the type from the Stream object from the StreamStart sticky event but we'd still have
|
||||||
|
@ -1529,7 +1532,11 @@ impl UriPlaylistBin {
|
||||||
let mut state_guard = self.state.lock().unwrap();
|
let mut state_guard = self.state.lock().unwrap();
|
||||||
let state = state_guard.as_mut().unwrap();
|
let state = state_guard.as_mut().unwrap();
|
||||||
|
|
||||||
let item = state.waiting_for_ss_eos.take().unwrap();
|
let item = match state.waiting_for_ss_eos.take() {
|
||||||
|
Some(item) => item,
|
||||||
|
None => return, // element is being shutdown
|
||||||
|
};
|
||||||
|
|
||||||
let (topology, pending_pads, sender) = item.done_waiting_for_ss_eos();
|
let (topology, pending_pads, sender) = item.done_waiting_for_ss_eos();
|
||||||
state.waiting_for_pads = Some(item);
|
state.waiting_for_pads = Some(item);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue