diff options
author | Gilles Dartiguelongue <eva@gentoo.org> | 2015-06-09 14:21:45 +0000 |
---|---|---|
committer | Gilles Dartiguelongue <eva@gentoo.org> | 2015-06-09 14:21:45 +0000 |
commit | bfe7ea723b8cebf483181a9900da23c6678b2c8b (patch) | |
tree | c018dc6051da2f9531b01eb6057bc1935877d5f8 /gnome-base/gnome-settings-daemon/files/gnome-settings-daemon-3.16.2-settings_set_display.patch | |
parent | Updating remote-id in metadata.xml (diff) | |
download | gentoo-2-bfe7ea723b8cebf483181a9900da23c6678b2c8b.tar.gz gentoo-2-bfe7ea723b8cebf483181a9900da23c6678b2c8b.tar.bz2 gentoo-2-bfe7ea723b8cebf483181a9900da23c6678b2c8b.zip |
Version bump for Gnome 3.16. Clean up old revision.
(Portage version: 2.2.20/cvs/Linux x86_64, signed Manifest commit with key C6085806)
Diffstat (limited to 'gnome-base/gnome-settings-daemon/files/gnome-settings-daemon-3.16.2-settings_set_display.patch')
-rw-r--r-- | gnome-base/gnome-settings-daemon/files/gnome-settings-daemon-3.16.2-settings_set_display.patch | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/gnome-base/gnome-settings-daemon/files/gnome-settings-daemon-3.16.2-settings_set_display.patch b/gnome-base/gnome-settings-daemon/files/gnome-settings-daemon-3.16.2-settings_set_display.patch new file mode 100644 index 000000000000..a8116b6d0177 --- /dev/null +++ b/gnome-base/gnome-settings-daemon/files/gnome-settings-daemon-3.16.2-settings_set_display.patch @@ -0,0 +1,47 @@ +From 804a75e86c8aafa46ff3c99933d1c8cd54ba7fcc Mon Sep 17 00:00:00 2001 +From: Alexandre Rostovtsev <tetromino@gentoo.org> +Date: Mon, 25 May 2015 12:35:13 -0400 +Subject: [PATCH] common: settings_set_display(): fix segfault when output == + NULL + +If settings_set_display() was called with output == NULL, edid remained +initialized to NULLs, but an array of NULLs is an illegal value for +KEY_DISPLAY settings, which has type "as". + +https://bugzilla.gnome.org/show_bug.cgi?id=749844 +--- + plugins/common/gsd-device-mapper.c | 11 +++++++---- + 1 file changed, 7 insertions(+), 4 deletions(-) + +diff --git a/plugins/common/gsd-device-mapper.c b/plugins/common/gsd-device-mapper.c +index ce70fd0..c8a1a1a 100644 +--- a/plugins/common/gsd-device-mapper.c ++++ b/plugins/common/gsd-device-mapper.c +@@ -365,7 +365,8 @@ static void + settings_set_display (GSettings *settings, + GnomeRROutput *output) + { +- gchar **prev, *edid[4] = { NULL, NULL, NULL, NULL }; ++ /* KEY_DISPLAY is type "as", so edid[0..2] must not be NULL */ ++ gchar **prev, *edid[4] = { "", "", "", NULL }; + GVariant *value; + gsize nvalues; + +@@ -384,9 +385,11 @@ settings_set_display (GSettings *settings, + g_settings_set_value (settings, KEY_DISPLAY, value); + } + +- g_free (edid[0]); +- g_free (edid[1]); +- g_free (edid[2]); ++ if (output) { ++ g_free (edid[0]); ++ g_free (edid[1]); ++ g_free (edid[2]); ++ } + g_strfreev (prev); + } + +-- +2.4.1 + |