diff --git a/gdm-2.32.0-maybe-set-is-loaded.patch b/gdm-2.32.0-maybe-set-is-loaded.patch new file mode 100644 index 0000000..d47f663 --- /dev/null +++ b/gdm-2.32.0-maybe-set-is-loaded.patch @@ -0,0 +1,82 @@ +3 patches from upstream to fix issue with GDM user list sometimes not loading properly + + +From 45e1f603f7b77644c7d4fed2bd0fae5e9b586f55 Mon Sep 17 00:00:00 2001 +From: Ray Strode +Date: Fri, 08 Oct 2010 01:47:51 +0000 +Subject: user-manager: fixes for when consolekit is unavailable + +Part of the user manager load sequence involves communicating +with ConsoleKit. If ConsoleKit is unavailable, we need to +properly finish the sequence so that the user manager +becomes accessible in a "degraded" mode. +--- +diff --git a/gui/simple-greeter/gdm-user-manager.c b/gui/simple-greeter/gdm-user-manager.c +index 7e7719a..112116c 100644 +--- a/gui/simple-greeter/gdm-user-manager.c ++++ b/gui/simple-greeter/gdm-user-manager.c +@@ -609,6 +609,7 @@ on_get_seat_id_finished (DBusGProxy *proxy, + "current session"); + } + unload_seat (manager); ++ maybe_set_is_loaded (manager); + return; + } + +@@ -918,6 +919,7 @@ on_get_current_session_finished (DBusGProxy *proxy, + g_debug ("Failed to identify the current session"); + } + unload_seat (manager); ++ maybe_set_is_loaded (manager); + return; + } + +-- +cgit v0.8.3.1 + +From 68fbf55992773124b4f79118d4a1564c737a3195 Mon Sep 17 00:00:00 2001 +From: Ray Strode +Date: Sun, 10 Oct 2010 19:47:47 +0000 +Subject: user-manager: add forward declaration + +This fixes a compiler warning. +--- +diff --git a/gui/simple-greeter/gdm-user-manager.c b/gui/simple-greeter/gdm-user-manager.c +index 112116c..6705acc 100644 +--- a/gui/simple-greeter/gdm-user-manager.c ++++ b/gui/simple-greeter/gdm-user-manager.c +@@ -229,6 +229,7 @@ static void fetch_user_locally (GdmUserManager *manager, + const char *username); + static void fetch_user_incrementally (GdmUserManagerFetchUserRequest *request); + ++static void maybe_set_is_loaded (GdmUserManager *manager); + static gpointer user_manager_object = NULL; + + G_DEFINE_TYPE (GdmUserManager, gdm_user_manager, G_TYPE_OBJECT) +-- +cgit v0.8.3.1 + +From efda830b8b978b96cd6a5923b3c1066250a31ac3 Mon Sep 17 00:00:00 2001 +From: Ray Strode +Date: Mon, 06 Dec 2010 15:46:28 +0000 +Subject: user-manager: maybe set is loaded ListCachedUsers + +This is another asynchronous fix, needed to make sure +the race of competing conditions properly end up with +a loaded user. +--- +diff --git a/gui/simple-greeter/gdm-user-manager.c b/gui/simple-greeter/gdm-user-manager.c +index 6705acc..c631989 100644 +--- a/gui/simple-greeter/gdm-user-manager.c ++++ b/gui/simple-greeter/gdm-user-manager.c +@@ -1198,6 +1198,8 @@ on_list_cached_users_finished (DBusGProxy *proxy, + return; + } + ++ maybe_set_is_loaded (manager); ++ + g_ptr_array_foreach (paths, (GFunc)add_new_user_for_object_path, manager); + + g_ptr_array_foreach (paths, (GFunc)g_free, NULL); +-- +cgit v0.8.3.1 diff --git a/gdm.spec b/gdm.spec index 0f2b6fd..5e009f3 100644 --- a/gdm.spec +++ b/gdm.spec @@ -15,7 +15,7 @@ Summary: The GNOME Display Manager Name: gdm Version: 2.32.0 -Release: 3%{?dist} +Release: 4%{?dist} Epoch: 1 License: GPLv2+ Group: User Interface/X @@ -88,6 +88,7 @@ Provides: service(graphical-login) = %{name} Requires: audit-libs >= %{libauditver} Patch2: plymouth.patch +Patch10: gdm-2.32.0-maybe-set-is-loaded.patch Patch96: gdm-multistack.patch # Fedora-specific @@ -131,6 +132,7 @@ The GDM fingerprint plugin provides functionality necessary to use a fingerprint %prep %setup -q %patch2 -p1 -b .plymouth +%patch10 -p1 -b .maybe-set-is-loaded %patch96 -p1 -b .multistack %patch97 -p1 -b .bubble-location %patch98 -p1 -b .tray-padding @@ -369,6 +371,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor >&/dev/ull || : %{_libdir}/gdm/simple-greeter/plugins/fingerprint.so %changelog +* Wed Dec 15 2010 Christopher Aillon 2.32.0-4 +- Add maybe-set-is-loaded.patch to ensure we end up with a loaded user + * Wed Dec 01 2010 Peter Hutterer 1:2.32.0-3 - plymouth.patch: xserver 1.10 takes "-background none" root argument instead of the fedora-specific "-nr".