SHA256
1
0
forked from pool/gdm
gdm/gdm-selecting-desktop-environment.patch
Dominique Leuenberger 1c2ed57c5b Accepting request 21202 from home:vuntz:branches:GNOME:Factory
Copy from home:vuntz:branches:GNOME:Factory/gdm via accept of submit request 21202 revision 2.
Request was accepted with message:
Thanks for the submission.

OBS-URL: https://build.opensuse.org/request/show/21202
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gdm?expand=0&rev=96
2009-09-28 14:41:28 +00:00

38 lines
1.9 KiB
Diff

Index: gdm-2.28.0/daemon/gdm-session-worker.c
===================================================================
--- gdm-2.28.0.orig/daemon/gdm-session-worker.c
+++ gdm-2.28.0/daemon/gdm-session-worker.c
@@ -157,6 +157,9 @@ typedef int (* GdmSessionWorkerPamNewMes
const struct pam_message **,
struct pam_response **,
gpointer);
+static void on_saved_session_name_read (GdmSessionWorker *worker);
+static void on_saved_language_name_read (GdmSessionWorker *worker);
+static void on_saved_layout_name_read (GdmSessionWorker *worker);
G_DEFINE_TYPE (GdmSessionWorker, gdm_session_worker, G_TYPE_OBJECT)
@@ -597,6 +600,22 @@ attempt_to_load_user_settings (GdmSessio
gdm_session_settings_load (worker->priv->user_settings,
username,
NULL);
+
+ /* These singal handlers should be disconnected after the loading,
+ * so that gdm_session_settings_set_* APIs don't cause the emitting
+ * of Saved*NameRead D-Bus signals any more.
+ */
+ g_signal_handlers_disconnect_by_func (worker->priv->user_settings,
+ G_CALLBACK (on_saved_session_name_read),
+ worker);
+
+ g_signal_handlers_disconnect_by_func (worker->priv->user_settings,
+ G_CALLBACK (on_saved_language_name_read),
+ worker);
+
+ g_signal_handlers_disconnect_by_func (worker->priv->user_settings,
+ G_CALLBACK (on_saved_layout_name_read),
+ worker);
}
static void