gdm r5831 - in trunk: . daemon
- From: halfline svn gnome org
- To: svn-commits-list gnome org
- Subject: gdm r5831 - in trunk: . daemon
- Date: Thu, 21 Feb 2008 04:20:26 +0000 (GMT)
Author: halfline
Date: Thu Feb 21 04:20:26 2008
New Revision: 5831
URL: http://svn.gnome.org/viewvc/gdm?rev=5831&view=rev
Log:
2008-02-20 Ray Strode <rstrode redhat com>
* daemon/gdm-session-settings.c
(gdm_session_settings_load):
Don't fail if optional fields are missing in ~/.dmrc
Modified:
trunk/ChangeLog
trunk/daemon/gdm-session-settings.c
Modified: trunk/daemon/gdm-session-settings.c
==============================================================================
--- trunk/daemon/gdm-session-settings.c (original)
+++ trunk/daemon/gdm-session-settings.c Thu Feb 21 04:20:26 2008
@@ -244,7 +244,6 @@
g_return_val_if_fail (settings != NULL, FALSE);
g_return_val_if_fail (home_directory != NULL, FALSE);
g_return_val_if_fail (!gdm_session_settings_is_loaded (settings), FALSE);
-
filename = g_build_filename (home_directory, ".dmrc", NULL);
is_loaded = FALSE;
@@ -260,7 +259,13 @@
session_name = g_key_file_get_string (key_file, "Desktop", "Session",
&load_error);
- if (session_name == NULL) {
+ if (session_name != NULL) {
+ gdm_session_settings_set_session_name (settings, session_name);
+ g_free (session_name);
+ } else if (g_error_matches (load_error, G_KEY_FILE_ERROR, G_KEY_FILE_ERROR_KEY_NOT_FOUND)) {
+ g_error_free (load_error);
+ load_error = NULL;
+ } else {
g_propagate_error (error, load_error);
goto out;
}
@@ -268,14 +273,17 @@
language_name = g_key_file_get_string (key_file, "Desktop", "Language",
&load_error);
- if (language_name == NULL) {
+ if (language_name != NULL) {
+ gdm_session_settings_set_language_name (settings, language_name);
+ g_free (language_name);
+ } else if (g_error_matches (load_error, G_KEY_FILE_ERROR, G_KEY_FILE_ERROR_KEY_NOT_FOUND)) {
+ g_error_free (load_error);
+ load_error = NULL;
+ } else {
g_propagate_error (error, load_error);
goto out;
}
- gdm_session_settings_set_language_name (settings, language_name);
- gdm_session_settings_set_session_name (settings, session_name);
-
is_loaded = TRUE;
out:
g_key_file_free (key_file);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]