]> rtime.felk.cvut.cz Git - sojka/lightdm.git/blobdiff - src/lightdm.c
Fix invalid unref when fail to start seat. Add regression test for this case
[sojka/lightdm.git] / src / lightdm.c
index 32ab3c05e231417609a9fd57a928b41b71940db4..714f86fc33c92775114fc2507ef0f62423c804e2 100644 (file)
@@ -1038,15 +1038,14 @@ add_login1_seat (Login1Seat *login1_seat)
             seat_set_property (seat, "exit-on-failure", "true");
     }
     else
-        g_debug ("Unable to create seat: %s", seat_name);
-
-    if (seat)
     {
-        started = display_manager_add_seat (display_manager, seat);
-        if (!started)
-            g_debug ("Failed to start seat: %s", seat_name);
+        g_debug ("Unable to create seat: %s", seat_name);
+        return FALSE;
     }
 
+    started = display_manager_add_seat (display_manager, seat);
+    if (!started)
+        g_debug ("Failed to start seat: %s", seat_name);
     g_object_unref (seat);
 
     return started;