summaryrefslogtreecommitdiff
path: root/libnm/nm-remote-connection.c
diff options
context:
space:
mode:
authorDan Winship <danw@gnome.org>2014-10-15 18:26:32 -0400
committerDan Winship <danw@gnome.org>2014-10-22 08:29:10 -0400
commit2ff4a7d4b0a7892fb08291d34e28df1cce31dbb9 (patch)
treee2342733fc5eefe41b91c0ddbf2587e4e799c427 /libnm/nm-remote-connection.c
parent3adc2b800ade93b8f9ff642d391ee73d66fec14c (diff)
downloadNetworkManager-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.c55
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;
}