[gdm/multi-stack: 29/45] Prevent start session signal handler from getting called multiple times
- From: Ray Strode <halfline src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gdm/multi-stack: 29/45] Prevent start session signal handler from getting called multiple times
- Date: Tue, 27 Apr 2010 19:43:31 +0000 (UTC)
commit 4069e5bfa6976b2f1df8053d9260adcbad6617be
Author: Ray Strode <rstrode redhat com>
Date: Wed Oct 28 11:13:10 2009 -0400
Prevent start session signal handler from getting called multiple times
It was causing a double free.
gui/simple-greeter/gdm-greeter-login-window.c | 9 +++++++++
1 files changed, 9 insertions(+), 0 deletions(-)
---
diff --git a/gui/simple-greeter/gdm-greeter-login-window.c b/gui/simple-greeter/gdm-greeter-login-window.c
index 3f756c4..64ba6e8 100644
--- a/gui/simple-greeter/gdm-greeter-login-window.c
+++ b/gui/simple-greeter/gdm-greeter-login-window.c
@@ -953,8 +953,17 @@ on_ready_to_start_session (GdmGreeterLoginWindow *login_window,
GParamSpec *param_spec,
char *service_name)
{
+ if (!login_window->priv->is_interactive) {
+ return;
+ }
+
gdm_greeter_login_window_start_session_when_ready (login_window, service_name);
g_free (service_name);
+
+ if (login_window->priv->start_session_handler_id > 0) {
+ g_signal_handler_disconnect (login_window, login_window->priv->start_session_handler_id);
+ login_window->priv->start_session_handler_id = 0;
+ }
}
static void
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]