xrandr: Don't operate on a NULL object.
This commit is contained in:
parent
3f1c4aa554
commit
9cfbd463e2
x11/gnome/settings-daemon
@ -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
|
||||
|
@ -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 <mclasen@redhat.com>
|
||||
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");
|
||||
|
Loading…
x
Reference in New Issue
Block a user