diff --git a/x11/gnome/settings-daemon/Makefile b/x11/gnome/settings-daemon/Makefile index 57956874ed2..cdd038b0d05 100755 --- a/x11/gnome/settings-daemon/Makefile +++ b/x11/gnome/settings-daemon/Makefile @@ -1,4 +1,4 @@ -# $OpenBSD: Makefile,v 1.90 2013/01/18 07:22:27 ajacoutot Exp $ +# $OpenBSD: Makefile,v 1.91 2013/01/23 19:02:15 ajacoutot Exp $ SHARED_ONLY= Yes @@ -6,6 +6,7 @@ COMMENT= GNOME settings daemon GNOME_PROJECT= gnome-settings-daemon GNOME_VERSION= 3.6.4 +REVISION= 0 # GPLv3 PERMIT_PACKAGE_CDROM= Yes @@ -13,7 +14,7 @@ PERMIT_PACKAGE_FTP= Yes PERMIT_DISTFILES_CDROM= Yes PERMIT_DISTFILES_FTP= Yes -WANTLIB += GL ICE SM X11 X11-xcb Xau Xcomposite Xcursor Xdamage +WANTLIB += ICE SM X11 X11-xcb Xau Xcomposite Xcursor Xdamage WANTLIB += Xdmcp Xext Xfixes Xi Xinerama Xrandr Xrender Xtst asn1 WANTLIB += atk-1.0 atk-bridge-2.0 atspi avahi-client avahi-common WANTLIB += c cairo cairo-gobject canberra canberra-gtk3 colord diff --git a/x11/gnome/settings-daemon/patches/patch-plugins_xrandr_gsd-xrandr-manager_c b/x11/gnome/settings-daemon/patches/patch-plugins_xrandr_gsd-xrandr-manager_c new file mode 100644 index 00000000000..69cfbe08ae1 --- /dev/null +++ b/x11/gnome/settings-daemon/patches/patch-plugins_xrandr_gsd-xrandr-manager_c @@ -0,0 +1,87 @@ +$OpenBSD: patch-plugins_xrandr_gsd-xrandr-manager_c,v 1.3 2013/01/23 19:02:15 ajacoutot Exp $ + +From b4ed1323cad845212fda4c374003c4b4bb1c5616 Mon Sep 17 00:00:00 2001 +From: Matthias Clasen +Date: Wed, 23 Jan 2013 10:52:50 +0000 +Subject: xrandr: Don't operate on a NULL object + +--- plugins/xrandr/gsd-xrandr-manager.c.orig Thu Jan 10 14:37:58 2013 ++++ plugins/xrandr/gsd-xrandr-manager.c Wed Jan 23 19:12:05 2013 +@@ -879,6 +879,8 @@ make_clone_setup (GsdXrandrManager *manager, GnomeRRSc + return NULL; + + result = gnome_rr_config_new_current (screen, NULL); ++ gnome_rr_config_set_clone (result, TRUE); ++ + outputs = gnome_rr_config_get_outputs (result); + + for (i = 0; outputs[i] != NULL; ++i) { +@@ -920,8 +922,6 @@ make_clone_setup (GsdXrandrManager *manager, GnomeRRSc + result = NULL; + } + +- gnome_rr_config_set_clone (result, TRUE); +- + print_configuration (result, "clone setup"); + + return result; +@@ -1003,6 +1003,8 @@ make_laptop_setup (GsdXrandrManager *manager, GnomeRRS + GnomeRROutputInfo **outputs = gnome_rr_config_get_outputs (result); + int i; + ++ gnome_rr_config_set_clone (result, FALSE); ++ + for (i = 0; outputs[i] != NULL; ++i) { + GnomeRROutputInfo *info = outputs[i]; + +@@ -1018,13 +1020,12 @@ make_laptop_setup (GsdXrandrManager *manager, GnomeRRS + } + } + ++ + if (config_is_all_off (result)) { + g_object_unref (G_OBJECT (result)); + result = NULL; + } + +- gnome_rr_config_set_clone (result, FALSE); +- + print_configuration (result, "Laptop setup"); + + /* FIXME - Maybe we should return NULL if there is more than +@@ -1137,6 +1138,8 @@ make_xinerama_setup (GsdXrandrManager *manager, GnomeR + int i; + int x; + ++ gnome_rr_config_set_clone (result, FALSE); ++ + x = 0; + for (i = 0; outputs[i] != NULL; ++i) { + GnomeRROutputInfo *info = outputs[i]; +@@ -1165,8 +1168,6 @@ make_xinerama_setup (GsdXrandrManager *manager, GnomeR + result = NULL; + } + +- gnome_rr_config_set_clone (result, FALSE); +- + print_configuration (result, "xinerama setup"); + + return result; +@@ -1183,6 +1184,8 @@ make_other_setup (GnomeRRScreen *screen) + GnomeRROutputInfo **outputs = gnome_rr_config_get_outputs (result); + int i; + ++ gnome_rr_config_set_clone (result, FALSE); ++ + for (i = 0; outputs[i] != NULL; ++i) { + GnomeRROutputInfo *info = outputs[i]; + +@@ -1199,8 +1202,6 @@ make_other_setup (GnomeRRScreen *screen) + g_object_unref (G_OBJECT (result)); + result = NULL; + } +- +- gnome_rr_config_set_clone (result, FALSE); + + print_configuration (result, "other setup"); +