diff --git a/src/gpm-brightness.c b/src/gpm-brightness.c
index 5453124..ec6b432 100644
--- a/src/gpm-brightness.c
+++ b/src/gpm-brightness.c
@@ -175,6 +175,9 @@ gpm_brightness_output_get_internal (GpmBrightness *brightness, RROutput output,
 
 	g_return_val_if_fail (GPM_IS_BRIGHTNESS (brightness), FALSE);
 
+	if (brightness->priv->backlight == None)
+		return FALSE;
+
 	if (XRRGetOutputProperty (brightness->priv->dpy, output, brightness->priv->backlight,
 				  0, 4, False, False, None,
 				  &actual_type, &actual_format,
@@ -200,6 +203,9 @@ gpm_brightness_output_set_internal (GpmBrightness *brightness, RROutput output,
 
 	g_return_val_if_fail (GPM_IS_BRIGHTNESS (brightness), FALSE);
 
+	if (brightness->priv->backlight == None)
+		return FALSE;
+
 	/* don't abort on error */
 	gdk_error_trap_push ();
 	XRRChangeOutputProperty (brightness->priv->dpy, output, brightness->priv->backlight, XA_INTEGER, 32,
@@ -290,6 +296,9 @@ gpm_brightness_output_get_limits (GpmBrightness *brightness, RROutput output,
 
 	g_return_val_if_fail (GPM_IS_BRIGHTNESS (brightness), FALSE);
 
+	if (brightness->priv->backlight == None)
+		return FALSE;
+
 	info = XRRQueryOutputProperty (brightness->priv->dpy, output, brightness->priv->backlight);
 	if (info == NULL) {
 		egg_debug ("could not get output property");
