diff options
author | Dan Winship <danw@gnome.org> | 2014-10-15 18:26:32 -0400 |
---|---|---|
committer | Dan Winship <danw@gnome.org> | 2014-10-22 08:29:10 -0400 |
commit | 2ff4a7d4b0a7892fb08291d34e28df1cce31dbb9 (patch) | |
tree | e2342733fc5eefe41b91c0ddbf2587e4e799c427 /libnm/nm-remote-connection.c | |
parent | 3adc2b800ade93b8f9ff642d391ee73d66fec14c (diff) | |
download | NetworkManager-2ff4a7d4b0a7892fb08291d34e28df1cce31dbb9.tar.gz |
libnm: strip GDBus gunk from GErrors
Call g_dbus_error_strip_remote_error() on all errors returned from
gdbus calls. (Blah!)
Diffstat (limited to 'libnm/nm-remote-connection.c')
-rw-r--r-- | libnm/nm-remote-connection.c | 55 |
1 files changed, 41 insertions, 14 deletions
diff --git a/libnm/nm-remote-connection.c b/libnm/nm-remote-connection.c index a1f4dc9f5f..a8592231cd 100644 --- a/libnm/nm-remote-connection.c +++ b/libnm/nm-remote-connection.c @@ -87,6 +87,7 @@ nm_remote_connection_commit_changes (NMRemoteConnection *connection, { NMRemoteConnectionPrivate *priv; GVariant *settings; + gboolean ret; g_return_val_if_fail (NM_IS_REMOTE_CONNECTION (connection), FALSE); @@ -94,14 +95,17 @@ nm_remote_connection_commit_changes (NMRemoteConnection *connection, settings = nm_connection_to_dbus (NM_CONNECTION (connection), NM_CONNECTION_SERIALIZE_ALL); if (save_to_disk) { - return nmdbus_settings_connection_call_update_sync (priv->proxy, - settings, - cancellable, error); + ret = nmdbus_settings_connection_call_update_sync (priv->proxy, + settings, + cancellable, error); } else { - return nmdbus_settings_connection_call_update_unsaved_sync (priv->proxy, - settings, - cancellable, error); + ret = nmdbus_settings_connection_call_update_unsaved_sync (priv->proxy, + settings, + cancellable, error); } + if (error && *error) + g_dbus_error_strip_remote_error (*error); + return ret; } static void @@ -114,8 +118,10 @@ update_cb (GObject *proxy, GAsyncResult *result, gpointer user_data) finish_func = g_object_get_data (G_OBJECT (simple), "finish_func"); if (finish_func (NMDBUS_SETTINGS_CONNECTION (proxy), result, &error)) g_simple_async_result_set_op_res_gboolean (simple, TRUE); - else + else { + g_dbus_error_strip_remote_error (error); g_simple_async_result_take_error (simple, error); + } g_simple_async_result_complete (simple); g_object_unref (simple); } @@ -212,12 +218,16 @@ nm_remote_connection_save (NMRemoteConnection *connection, GError **error) { NMRemoteConnectionPrivate *priv; + gboolean ret; g_return_val_if_fail (NM_IS_REMOTE_CONNECTION (connection), FALSE); priv = NM_REMOTE_CONNECTION_GET_PRIVATE (connection); - return nmdbus_settings_connection_call_save_sync (priv->proxy, cancellable, error); + ret = nmdbus_settings_connection_call_save_sync (priv->proxy, cancellable, error); + if (error && *error) + g_dbus_error_strip_remote_error (*error); + return ret; } static void @@ -229,8 +239,10 @@ save_cb (GObject *proxy, GAsyncResult *result, gpointer user_data) if (nmdbus_settings_connection_call_save_finish (NMDBUS_SETTINGS_CONNECTION (proxy), result, &error)) g_simple_async_result_set_op_res_gboolean (simple, TRUE); - else + else { + g_dbus_error_strip_remote_error (error); g_simple_async_result_take_error (simple, error); + } g_simple_async_result_complete (simple); g_object_unref (simple); } @@ -305,12 +317,16 @@ nm_remote_connection_delete (NMRemoteConnection *connection, GError **error) { NMRemoteConnectionPrivate *priv; + gboolean ret; g_return_val_if_fail (NM_IS_REMOTE_CONNECTION (connection), FALSE); priv = NM_REMOTE_CONNECTION_GET_PRIVATE (connection); - return nmdbus_settings_connection_call_delete_sync (priv->proxy, cancellable, error); + ret = nmdbus_settings_connection_call_delete_sync (priv->proxy, cancellable, error); + if (error && *error) + g_dbus_error_strip_remote_error (*error); + return ret; } static void @@ -322,8 +338,10 @@ delete_cb (GObject *proxy, GAsyncResult *result, gpointer user_data) if (nmdbus_settings_connection_call_delete_finish (NMDBUS_SETTINGS_CONNECTION (proxy), result, &error)) g_simple_async_result_set_op_res_gboolean (simple, TRUE); - else + else { + g_dbus_error_strip_remote_error (error); g_simple_async_result_take_error (simple, error); + } g_simple_async_result_complete (simple); g_object_unref (simple); } @@ -412,8 +430,11 @@ nm_remote_connection_get_secrets (NMRemoteConnection *connection, &secrets, cancellable, error)) return secrets; - else + else { + if (error && *error) + g_dbus_error_strip_remote_error (*error); return NULL; + } } static void @@ -426,8 +447,10 @@ get_secrets_cb (GObject *proxy, GAsyncResult *result, gpointer user_data) if (nmdbus_settings_connection_call_get_secrets_finish (NMDBUS_SETTINGS_CONNECTION (proxy), &secrets, result, &error)) g_simple_async_result_set_op_res_gpointer (simple, secrets, (GDestroyNotify) g_variant_unref); - else + else { + g_dbus_error_strip_remote_error (error); g_simple_async_result_take_error (simple, error); + } g_simple_async_result_complete (simple); g_object_unref (simple); @@ -627,8 +650,11 @@ init_sync (GInitable *initable, GCancellable *cancellable, GError **error) if (!nmdbus_settings_connection_call_get_settings_sync (priv->proxy, &settings, - cancellable, error)) + cancellable, error)) { + if (error && *error) + g_dbus_error_strip_remote_error (*error); return FALSE; + } priv->visible = TRUE; replace_settings (self, settings); @@ -669,6 +695,7 @@ init_get_settings_cb (GObject *proxy, if (!nmdbus_settings_connection_call_get_settings_finish (priv->proxy, &settings, result, &error)) { + g_dbus_error_strip_remote_error (error); init_async_complete (init_data, error); return; } |