diff options
author | Ray Strode <rstrode@redhat.com> | 2009-04-13 14:19:50 -0400 |
---|---|---|
committer | Ray Strode <rstrode@redhat.com> | 2009-04-17 10:24:53 -0400 |
commit | c98a8ac6971b44071aef38a29b550378554a733b (patch) | |
tree | ce07b43361de74d9d77d99997654055ac5af002e | |
parent | 996f22a0da8d207932f1efc1b30b337c485fa681 (diff) | |
download | gdm-c98a8ac6971b44071aef38a29b550378554a733b.tar.gz |
reset all conversations if password conversation fails
This is a temporary hack until we store plugin policy in
gconf.
-rw-r--r-- | gui/simple-greeter/gdm-greeter-login-window.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gui/simple-greeter/gdm-greeter-login-window.c b/gui/simple-greeter/gdm-greeter-login-window.c index a16948f9..3daf89d0 100644 --- a/gui/simple-greeter/gdm-greeter-login-window.c +++ b/gui/simple-greeter/gdm-greeter-login-window.c @@ -907,6 +907,16 @@ gdm_greeter_login_window_conversation_stopped (GdmGreeterLoginWindow *login_wind g_debug ("GdmGreeterLoginWindow: conversation '%s' has stopped", service_name); + /* If the password conversation failed, then start over + * + * FIXME: we need to get this policy out of the source code + */ + if (strcmp (service_name, "gdm-password") == 0) { + g_debug ("GdmGreeterLoginWindow: main conversation failed, starting over"); + restart_conversations (login_window); + return TRUE; + } + task = find_task_with_service_name (login_window, service_name); if (task != NULL) { |