gdm/gdm-2.20.0-fix-default-language.patch

26 lines
778 B
Diff
Raw Normal View History

--- gdm-2.20.0/daemon/gdm-daemon-config.c 2007-09-19 16:40:33.000000000 -0600
+++ gdm-2.20.0/daemon/gdm-daemon-config.c 2007-09-19 16:17:30.000000000 -0600
@@ -2846,10 +2846,20 @@
gchar *cfgstr;
cfgstr = g_build_filename (home_dir, ".dmrc", NULL);
-
dmrc = gdm_common_config_load (cfgstr, NULL);
if (dmrc == NULL) {
- return;
+ gint fd = -1;
+ gdm_debug ("file: %s does not exist - creating it", cfgstr);
+ VE_IGNORE_EINTR (fd = g_open (cfgstr, O_CREAT | O_TRUNC | O_RDWR, 0644));
+ if (fd < 0) return;
+ write (fd, "\n", 2);
+ close (fd);
+ dmrc = gdm_common_config_load (cfgstr, NULL);
+ if (dmrc == NULL) {
+ gdm_debug ("failed to open %s after creating it", cfgstr);
+ return;
+ }
+
}
if (savesess) {