summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim-Philipp Müller <tim@centricular.com>2019-03-08 23:49:49 +0000
committerTim-Philipp Müller <tim@centricular.com>2019-03-08 23:49:49 +0000
commit8ee9a94c4d0602eb77794f198731e373f62ef2e0 (patch)
treeb5269d44f0d62a19cc1b1516d959c75cd10ec61c
parentecb7049d7ead022c5f855f69639fdb8f494c4842 (diff)
assrender: fix some leaks
g_slist_remove_*() removes the list node without freeing it.
-rw-r--r--ext/assrender/gstassrender.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/ext/assrender/gstassrender.c b/ext/assrender/gstassrender.c
index 463ebafcd..c77e65678 100644
--- a/ext/assrender/gstassrender.c
+++ b/ext/assrender/gstassrender.c
@@ -358,10 +358,10 @@ gst_ass_render_pop_text (GstAssRender * render)
{
while (render->subtitle_pending) {
GST_DEBUG_OBJECT (render, "releasing text buffer %p",
- render->subtitle_pending);
+ render->subtitle_pending->data);
gst_buffer_unref (render->subtitle_pending->data);
render->subtitle_pending =
- g_slist_remove_link (render->subtitle_pending,
+ g_slist_delete_link (render->subtitle_pending,
render->subtitle_pending);
}
@@ -1263,9 +1263,9 @@ wait_for_text_buf:
GST_WARNING_OBJECT (render,
"Got text buffer with invalid timestamp or duration");
gst_buffer_unref (bad->data);
- subtitle_pending = bad->next;
+ bad = subtitle_pending->next;
render->subtitle_pending =
- g_slist_remove_link (render->subtitle_pending, bad);
+ g_slist_delete_link (render->subtitle_pending, bad);
GST_ASS_RENDER_BROADCAST (render);
continue;
}
@@ -1295,7 +1295,7 @@ wait_for_text_buf:
gst_buffer_unref (old->data);
subtitle_pending = old->next;
render->subtitle_pending =
- g_slist_remove_link (render->subtitle_pending, old);
+ g_slist_delete_link (render->subtitle_pending, old);
GST_ASS_RENDER_BROADCAST (render);
continue;
}
@@ -1356,7 +1356,7 @@ wait_for_text_buf:
gst_buffer_unref (old->data);
subtitle_pending = old->next;
render->subtitle_pending =
- g_slist_remove_link (render->subtitle_pending, old);
+ g_slist_delete_link (render->subtitle_pending, old);
GST_ASS_RENDER_BROADCAST (render);
GST_ASS_RENDER_UNLOCK (render);
render->need_process = TRUE;