mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-23 16:50:47 +00:00
pad: fix sticky event leak after sticky_events_foreach
events_foreach adds an extra ref when giving the event to the user function. In case it was unrefed by the user, this extra ref disappeared, but events_foreach still should unref again to lose its own ref before removing the event from the array. https://bugzilla.gnome.org/show_bug.cgi?id=722467
This commit is contained in:
parent
0264bbdb46
commit
75fe1004a5
1 changed files with 1 additions and 0 deletions
|
@ -547,6 +547,7 @@ restart:
|
||||||
if (G_UNLIKELY (ev->event != ev_ret.event)) {
|
if (G_UNLIKELY (ev->event != ev_ret.event)) {
|
||||||
if (G_UNLIKELY (ev_ret.event == NULL)) {
|
if (G_UNLIKELY (ev_ret.event == NULL)) {
|
||||||
/* function unreffed and set the event to NULL, remove it */
|
/* function unreffed and set the event to NULL, remove it */
|
||||||
|
gst_event_unref (ev->event);
|
||||||
g_array_remove_index (events, i);
|
g_array_remove_index (events, i);
|
||||||
len--;
|
len--;
|
||||||
cookie = ++pad->priv->events_cookie;
|
cookie = ++pad->priv->events_cookie;
|
||||||
|
|
Loading…
Reference in a new issue