summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBastien Nocera <hadess@hadess.net>2022-03-29 10:09:01 +0200
committerBastien Nocera <hadess@hadess.net>2022-03-29 10:14:45 +0200
commitf0bcd3c6c31ca370a4d7b9e6f055f48942b982ef (patch)
tree069e0b5842c077306519a875488ba646cbad6545 /src
parent0079a83f3831216f766b458d82aea717851d1e75 (diff)
downloadtotem-f0bcd3c6c31ca370a4d7b9e6f055f48942b982ef.tar.gz
backend: Plug memory leaks on exit
A number of variables were not freed when the video widget was destroyed.
Diffstat (limited to 'src')
-rw-r--r--src/backend/bacon-video-widget.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/backend/bacon-video-widget.c b/src/backend/bacon-video-widget.c
index ce88b1a4f..82dd1655a 100644
--- a/src/backend/bacon-video-widget.c
+++ b/src/backend/bacon-video-widget.c
@@ -2450,6 +2450,8 @@ bacon_video_widget_finalize (GObject * object)
g_clear_pointer (&bvw->referrer, g_free);
g_clear_pointer (&bvw->mrl, g_free);
g_clear_pointer (&bvw->subtitle_uri, g_free);
+ g_clear_pointer (&bvw->user_id, g_free);
+ g_clear_pointer (&bvw->user_pw, g_free);
g_clear_object (&bvw->clock);
@@ -2467,6 +2469,14 @@ bacon_video_widget_finalize (GObject * object)
g_list_free_full (bvw->chapters, (GDestroyNotify) gst_mini_object_unref);
bvw->chapters = NULL;
}
+ if (bvw->subtitles) {
+ g_list_free_full (bvw->subtitles, (GDestroyNotify) bacon_video_widget_lang_info_free);
+ bvw->subtitles = NULL;
+ }
+ if (bvw->languages) {
+ g_list_free_full (bvw->languages, (GDestroyNotify) bacon_video_widget_lang_info_free);
+ bvw->languages = NULL;
+ }
g_clear_pointer (&bvw->tagcache, gst_tag_list_unref);
g_clear_pointer (&bvw->audiotags, gst_tag_list_unref);