diff -up gdm-2.22.0/common/gdm-settings-keys.h.fix-auto-login gdm-2.22.0/common/gdm-settings-keys.h
--- gdm-2.22.0/common/gdm-settings-keys.h.fix-auto-login 2008-06-27 12:57:23.000000000 -0400
+++ gdm-2.22.0/common/gdm-settings-keys.h 2008-06-27 12:57:23.000000000 -0400
@@ -27,6 +27,8 @@ G_BEGIN_DECLS
#define GDM_KEY_USER "daemon/User"
#define GDM_KEY_GROUP "daemon/Group"
+#define GDM_KEY_AUTO_LOGIN_ENABLE "daemon/AutomaticLoginEnable"
+#define GDM_KEY_AUTO_LOGIN_USER "daemon/AutomaticLogin"
#define GDM_KEY_TIMED_LOGIN_ENABLE "daemon/TimedLoginEnable"
#define GDM_KEY_TIMED_LOGIN_USER "daemon/TimedLogin"
#define GDM_KEY_TIMED_LOGIN_DELAY "daemon/TimedLoginDelay"
diff -up gdm-2.22.0/daemon/gdm-simple-slave.c.fix-auto-login gdm-2.22.0/daemon/gdm-simple-slave.c
--- gdm-2.22.0/daemon/gdm-simple-slave.c.fix-auto-login 2008-06-27 12:57:23.000000000 -0400
+++ gdm-2.22.0/daemon/gdm-simple-slave.c 2008-06-27 12:57:23.000000000 -0400
@@ -427,12 +427,26 @@ get_timed_login_details (GdmSimpleSlave
gboolean res;
enabled = FALSE;
+ res = gdm_settings_client_get_boolean (GDM_KEY_AUTO_LOGIN_ENABLE, &enabled);
+ if (enabled) {
+
+ *username = NULL;
+ res = gdm_settings_client_get_string (GDM_KEY_AUTO_LOGIN_USER, username);
+ }
+
+ if (enabled && *username != NULL)
+ {
+ *delay = 0;
+ return TRUE;
+ }
+
+ *username = NULL;
+ enabled = FALSE;
res = gdm_settings_client_get_boolean (GDM_KEY_TIMED_LOGIN_ENABLE, &enabled);
if (! enabled) {
return FALSE;
}
- *username = NULL;
res = gdm_settings_client_get_string (GDM_KEY_TIMED_LOGIN_USER, username);
if (username == NULL) {
diff -up gdm-2.22.0/data/gdm.schemas.in.fix-auto-login gdm-2.22.0/data/gdm.schemas.in
--- gdm-2.22.0/data/gdm.schemas.in.fix-auto-login 2008-06-30 10:06:29.000000000 -0400
+++ gdm-2.22.0/data/gdm.schemas.in 2008-06-30 10:06:49.000000000 -0400
@@ -12,6 +12,16 @@
<default>gdm</default>
</schema>
<schema>
+ <key>daemon/AutomaticLoginEnable</key>
+ <signature>b</signature>
+ <default>false</default>
+ </schema>
+ <schema>
+ <key>daemon/AutomaticLogin</key>
+ <signature>s</signature>
+ <default></default>
+ </schema>
+ <schema>
<key>daemon/TimedLoginEnable</key>
<signature>b</signature>
<default>false</default>
diff -up gdm-2.22.0/data/gdm.schemas.in.in.fix-auto-login gdm-2.22.0/data/gdm.schemas.in.in
--- gdm-2.22.0/data/gdm.schemas.in.in.fix-auto-login 2008-04-17 23:29:29.000000000 -0400
+++ gdm-2.22.0/data/gdm.schemas.in.in 2008-06-27 12:57:23.000000000 -0400
@@ -12,6 +12,16 @@
<default>gdm</default>
</schema>
<schema>
+ <key>daemon/AutomaticLoginEnable</key>
+ <signature>b</signature>
+ <default>false</default>
+ </schema>
+ <schema>
+ <key>daemon/AutomaticLogin</key>
+ <signature>s</signature>
+ <default></default>
+ </schema>
+ <schema>
<key>daemon/TimedLoginEnable</key>
<signature>b</signature>
<default>false</default>