mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-04-26 06:54:49 +00:00
oggmux: don't leak dropped seek event
This commit is contained in:
parent
fb0e727f13
commit
8b15f5a8ab
1 changed files with 8 additions and 6 deletions
|
@ -523,16 +523,17 @@ gst_ogg_mux_handle_src_event (GstPad * pad, GstObject * parent,
|
||||||
{
|
{
|
||||||
gboolean res = FALSE;
|
gboolean res = FALSE;
|
||||||
GstOggMux *ogg_mux = GST_OGG_MUX (parent);
|
GstOggMux *ogg_mux = GST_OGG_MUX (parent);
|
||||||
GstEventType type = event ? GST_EVENT_TYPE (event) : GST_EVENT_UNKNOWN;
|
|
||||||
|
|
||||||
switch (type) {
|
switch (GST_EVENT_TYPE (event)) {
|
||||||
case GST_EVENT_SEEK:{
|
case GST_EVENT_SEEK:{
|
||||||
GstSeekFlags flags;
|
GstSeekFlags flags;
|
||||||
|
|
||||||
gst_event_parse_seek (event, NULL, NULL, &flags, NULL, NULL, NULL, NULL);
|
gst_event_parse_seek (event, NULL, NULL, &flags, NULL, NULL, NULL, NULL);
|
||||||
if (!ogg_mux->need_headers && (flags & GST_SEEK_FLAG_FLUSH) != 0) {
|
if (!ogg_mux->need_headers && (flags & GST_SEEK_FLAG_FLUSH) != 0) {
|
||||||
/* disable flushing seeks once we started */
|
/* don't allow flushing seeks once we started */
|
||||||
goto eat;
|
gst_event_unref (event);
|
||||||
|
event = NULL;
|
||||||
|
res = FALSE;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -540,8 +541,9 @@ gst_ogg_mux_handle_src_event (GstPad * pad, GstObject * parent,
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
res = gst_pad_event_default (pad, parent, event);
|
if (event != NULL)
|
||||||
eat:
|
res = gst_pad_event_default (pad, parent, event);
|
||||||
|
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue