From c91085caf7474d2d05fdf9e309ca807be33c4748 Mon Sep 17 00:00:00 2001 From: Rui Matos Date: Mon, 6 Jun 2016 20:26:28 +0200 Subject: [PATCH] shell-recorder: Ensure we remove the redraw timeout on finalize Otherwise we may end up using freed memory and crashing https://bugzilla.gnome.org/show_bug.cgi?id=767001 --- src/shell-recorder.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/shell-recorder.c b/src/shell-recorder.c index 84d68f56b..ef729ff5f 100644 --- a/src/shell-recorder.c +++ b/src/shell-recorder.c @@ -107,6 +107,8 @@ static void recorder_set_draw_cursor (ShellRecorder *recorder, static void recorder_pipeline_set_caps (RecorderPipeline *pipeline); static void recorder_pipeline_closed (RecorderPipeline *pipeline); +static void recorder_remove_redraw_timeout (ShellRecorder *recorder); + enum { PROP_0, PROP_SCREEN, @@ -235,6 +237,8 @@ shell_recorder_finalize (GObject *object) recorder_set_pipeline (recorder, NULL); recorder_set_file_template (recorder, NULL); + recorder_remove_redraw_timeout (recorder); + g_clear_object (&recorder->a11y_settings); G_OBJECT_CLASS (shell_recorder_parent_class)->finalize (object);