]> rtime.felk.cvut.cz Git - sojka/lightdm.git/commitdiff
simplify the patch based on Robert's feedback
authorCharles Kerr <charles.kerr@canonical.com>
Mon, 17 Mar 2014 17:11:09 +0000 (12:11 -0500)
committerCharles Kerr <charles.kerr@canonical.com>
Mon, 17 Mar 2014 17:11:09 +0000 (12:11 -0500)
liblightdm-gobject/layout.c

index 6d0ab19a352e93cd138a5821e2c4d1f3e3ce9c17..c0426e35995036f1285b9c08dc025b5f7fd32db8 100644 (file)
@@ -109,30 +109,26 @@ layout_cb (XklConfigRegistry *config,
 GList *
 lightdm_get_layouts (void)
 {
+    XklConfigRegistry *registry;
+
     if (have_layouts)
         return layouts;
 
     display = XOpenDisplay (NULL);
+    if (display == NULL)
+        return NULL;
+    
     xkl_engine = xkl_engine_get_instance (display);
-    if (xkl_engine == NULL)
-    {
-        g_warning ("Failed to get Xkl engine for display '%p'", display);
-    }
-    else
-    {
-        XklConfigRegistry *registry;
+    xkl_config = xkl_config_rec_new ();
+    if (!xkl_config_rec_get_from_server (xkl_config, xkl_engine))
+        g_warning ("Failed to get Xkl configuration from server");
 
-        xkl_config = xkl_config_rec_new ();
-        if (!xkl_config_rec_get_from_server (xkl_config, xkl_engine))
-            g_warning ("Failed to get Xkl configuration from server");
+    registry = xkl_config_registry_get_instance (xkl_engine);
+    xkl_config_registry_load (registry, FALSE);
+    xkl_config_registry_foreach_layout (registry, layout_cb, NULL);
+    g_object_unref (registry);
 
-        registry = xkl_config_registry_get_instance (xkl_engine);
-        xkl_config_registry_load (registry, FALSE);
-        xkl_config_registry_foreach_layout (registry, layout_cb, NULL);
-        g_object_unref (registry);
-
-        have_layouts = TRUE;
-    }
+    have_layouts = TRUE;
 
     return layouts;
 }