From 88647ae23cd818c28ff81fd9de38aac4144c4994 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20M=C3=BChlbacher?= Date: Wed, 27 Jan 2021 20:00:04 +0100 Subject: [PATCH] monitor-config: Free `meta_monitor_spec` safely `g_free()` alone can't help if the value it gets is `NULL` + the offset of the struct members. This prevents gnome-shell from segfaulting if `monitors.xml` contains invalid XML. Closes: Part-of: --- src/backends/meta-monitor-config-manager.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/backends/meta-monitor-config-manager.c b/src/backends/meta-monitor-config-manager.c index 1ef92c2d4..fc7a8dd54 100644 --- a/src/backends/meta-monitor-config-manager.c +++ b/src/backends/meta-monitor-config-manager.c @@ -1388,7 +1388,8 @@ meta_monitor_config_manager_class_init (MetaMonitorConfigManagerClass *klass) void meta_monitor_config_free (MetaMonitorConfig *monitor_config) { - meta_monitor_spec_free (monitor_config->monitor_spec); + if (monitor_config->monitor_spec) + meta_monitor_spec_free (monitor_config->monitor_spec); g_free (monitor_config->mode_spec); g_free (monitor_config); }