summaryrefslogtreecommitdiff
path: root/liblightdm-gobject
diff options
context:
space:
mode:
authorRobert Ancell <robert.ancell@canonical.com>2011-10-08 09:41:42 +1100
committerRobert Ancell <robert.ancell@canonical.com>2011-10-08 09:41:42 +1100
commit155cde625dfc4aa70ee90e9916dc929784f5354c (patch)
tree9edc28b14520880c767ee6b50cb815d1be0a296c /liblightdm-gobject
parent284fbbf29f71334fa384ec62eee5981002ed07f8 (diff)
downloadlightdm-155cde625dfc4aa70ee90e9916dc929784f5354c.tar.gz
Use paranoid error checking in liblightdm-gobject
Diffstat (limited to 'liblightdm-gobject')
-rw-r--r--liblightdm-gobject/greeter.c10
-rw-r--r--liblightdm-gobject/session.c4
-rw-r--r--liblightdm-gobject/user.c20
3 files changed, 18 insertions, 16 deletions
diff --git a/liblightdm-gobject/greeter.c b/liblightdm-gobject/greeter.c
index a0ee966e..3c10007e 100644
--- a/liblightdm-gobject/greeter.c
+++ b/liblightdm-gobject/greeter.c
@@ -122,13 +122,15 @@ static void
write_message (LightDMGreeter *greeter, guint8 *message, gsize message_length)
{
LightDMGreeterPrivate *priv = GET_PRIVATE (greeter);
+ GIOStatus status;
GError *error = NULL;
- if (g_io_channel_write_chars (priv->to_server_channel, (gchar *) message, message_length, NULL, NULL) != G_IO_STATUS_NORMAL)
+ status = g_io_channel_write_chars (priv->to_server_channel, (gchar *) message, message_length, NULL, &error);
+ if (error)
g_warning ("Error writing to daemon: %s", error->message);
- else
- g_debug ("Wrote %zi bytes to daemon", message_length);
g_clear_error (&error);
+ if (status == G_IO_STATUS_NORMAL)
+ g_debug ("Wrote %zi bytes to daemon", message_length);
g_io_channel_flush (priv->to_server_channel, NULL);
}
@@ -373,7 +375,7 @@ read_message (LightDMGreeter *greeter, gsize *length, gboolean block)
n_to_read - priv->n_read,
&n_read,
&error);
- if (status == G_IO_STATUS_ERROR)
+ if (error)
g_warning ("Error reading from server: %s", error->message);
g_clear_error (&error);
if (status != G_IO_STATUS_NORMAL)
diff --git a/liblightdm-gobject/session.c b/liblightdm-gobject/session.c
index c2f193de..3ebb8ce4 100644
--- a/liblightdm-gobject/session.c
+++ b/liblightdm-gobject/session.c
@@ -115,7 +115,7 @@ update_sessions (void)
return;
directory = g_dir_open (XSESSIONS_DIR, 0, &error);
- if (!directory)
+ if (error)
g_warning ("Failed to open sessions directory: %s", error->message);
g_clear_error (&error);
if (!directory)
@@ -139,7 +139,7 @@ update_sessions (void)
key_file = g_key_file_new ();
result = g_key_file_load_from_file (key_file, path, G_KEY_FILE_NONE, &error);
- if (!result)
+ if (error)
g_warning ("Failed to load session file %s: %s:", path, error->message);
g_clear_error (&error);
diff --git a/liblightdm-gobject/user.c b/liblightdm-gobject/user.c
index a6779fbc..0e832073 100644
--- a/liblightdm-gobject/user.c
+++ b/liblightdm-gobject/user.c
@@ -203,8 +203,8 @@ load_passwd_file (LightDMUserList *user_list, gboolean emit_add_signal)
g_debug ("Loading user config from %s", USER_CONFIG_FILE);
config = g_key_file_new ();
- if (!g_key_file_load_from_file (config, USER_CONFIG_FILE, G_KEY_FILE_NONE, &error) &&
- !g_error_matches (error, G_FILE_ERROR, G_FILE_ERROR_NOENT))
+ g_key_file_load_from_file (config, USER_CONFIG_FILE, G_KEY_FILE_NONE, &error);
+ if (error && !g_error_matches (error, G_FILE_ERROR, G_FILE_ERROR_NOENT))
g_warning ("Failed to load configuration from %s: %s", USER_CONFIG_FILE, error->message); // FIXME: Don't make warning on no file, just info
g_clear_error (&error);
@@ -393,7 +393,7 @@ update_user (UserAccountObject *object)
-1,
NULL,
&error);
- if (!result)
+ if (error)
g_warning ("Error updating user %s: %s", g_dbus_proxy_get_object_path (object->proxy), error->message);
g_clear_error (&error);
if (!result)
@@ -472,7 +472,7 @@ user_account_object_new (LightDMUserList *user_list, const gchar *path)
"org.freedesktop.Accounts.User",
NULL,
&error);
- if (!proxy)
+ if (error)
g_warning ("Error getting user %s: %s", path, error->message);
g_clear_error (&error);
if (!proxy)
@@ -593,7 +593,7 @@ load_session (LightDMUserList *user_list, const gchar *path)
-1,
NULL,
&error);
- if (!result)
+ if (error)
g_warning ("Error getting UserName from org.freedesktop.DisplayManager.Session: %s", error->message);
g_clear_error (&error);
if (!result)
@@ -686,7 +686,7 @@ update_users (LightDMUserList *user_list)
"org.freedesktop.Accounts",
NULL,
&error);
- if (!priv->accounts_service_proxy)
+ if (error)
g_warning ("Error contacting org.freedesktop.Accounts: %s", error->message);
g_clear_error (&error);
@@ -718,7 +718,7 @@ update_users (LightDMUserList *user_list)
-1,
NULL,
&error);
- if (!result)
+ if (error)
g_warning ("Error getting user list from org.freedesktop.Accounts: %s", error->message);
g_clear_error (&error);
if (!result)
@@ -764,7 +764,7 @@ update_users (LightDMUserList *user_list)
passwd_file = g_file_new_for_path (PASSWD_FILE);
priv->passwd_monitor = g_file_monitor (passwd_file, G_FILE_MONITOR_NONE, NULL, &error);
g_object_unref (passwd_file);
- if (!priv->passwd_monitor)
+ if (error)
g_warning ("Error monitoring %s: %s", PASSWD_FILE, error->message);
else
g_signal_connect (priv->passwd_monitor, "changed", G_CALLBACK (passwd_changed_cb), user_list);
@@ -779,7 +779,7 @@ update_users (LightDMUserList *user_list)
"org.freedesktop.DisplayManager",
NULL,
&error);
- if (!priv->display_manager_proxy)
+ if (error)
g_warning ("Error contacting org.freedesktop.DisplayManager: %s", error->message);
g_clear_error (&error);
@@ -800,7 +800,7 @@ update_users (LightDMUserList *user_list)
-1,
NULL,
&error);
- if (!result)
+ if (error)
g_warning ("Error getting session list from org.freedesktop.DisplayManager: %s", error->message);
g_clear_error (&error);
if (!result)