[seahorse/gnome-3-6] Strip possible dbus errors before displaying



commit 60e7f1bc15a554fa05106c2b9f5e25fb827925a4
Author: Stef Walter <stefw gnome org>
Date:   Sat Oct 13 15:06:54 2012 +0200

    Strip possible dbus errors before displaying
    
     * It's dumb that we need to strip error messages to prevent
       DBus error names from leaking to the user. But do this anyway
       now that we're using libsecret, which uses GDBus.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=684966

 gkr/seahorse-gkr-item-properties.c       |    2 ++
 libseahorse/seahorse-key-manager-store.c |    1 +
 libseahorse/seahorse-util.c              |    1 +
 pgp/seahorse-keyserver-results.c         |    1 +
 4 files changed, 5 insertions(+), 0 deletions(-)
---
diff --git a/gkr/seahorse-gkr-item-properties.c b/gkr/seahorse-gkr-item-properties.c
index 8976c78..7a138da 100644
--- a/gkr/seahorse-gkr-item-properties.c
+++ b/gkr/seahorse-gkr-item-properties.c
@@ -211,6 +211,7 @@ on_update_password_ready (GObject *source,
 		transfer_password (git, swidget);
 
 	} else {
+		g_dbus_error_strip_remote_error (error);
 		seahorse_util_show_error (seahorse_widget_get_toplevel (swidget),
 		                          _("Couldn't change password."), error->message);
 		g_clear_error (&error);
@@ -340,6 +341,7 @@ on_item_description_complete (GObject *source,
 		gtk_entry_set_text (closure->entry,
 		                    secret_item_get_label (SECRET_ITEM (git)));
 
+		g_dbus_error_strip_remote_error (error);
 		seahorse_util_show_error (seahorse_widget_get_toplevel (closure->swidget),
 		                          _("Couldn't set description."), error->message);
 		g_clear_error (&error);
diff --git a/libseahorse/seahorse-key-manager-store.c b/libseahorse/seahorse-key-manager-store.c
index 670e1b1..0781768 100644
--- a/libseahorse/seahorse-key-manager-store.c
+++ b/libseahorse/seahorse-key-manager-store.c
@@ -439,6 +439,7 @@ drag_end (GtkWidget *widget, GdkDragContext *context, SeahorseKeyManagerStore *s
 		export_to_directory (skstore, skstore->priv->drag_destination);
 
 	if (skstore->priv->drag_error) {
+		g_dbus_error_strip_remote_error (skstore->priv->drag_error);
 		seahorse_util_show_error (widget, _("Couldn't export keys"),
 		                          skstore->priv->drag_error->message);
 	}
diff --git a/libseahorse/seahorse-util.c b/libseahorse/seahorse-util.c
index f55e7dc..8fa7652 100644
--- a/libseahorse/seahorse-util.c
+++ b/libseahorse/seahorse-util.c
@@ -140,6 +140,7 @@ seahorse_util_handle_error (GError **error,
 	else
 		g_warning ("unsupported 'parent' argument passed to seahorse_util_handle_error() ");
 
+	g_dbus_error_strip_remote_error (*error);
 	seahorse_util_show_error (widget, text,
 	                          (*error)->message ? (*error)->message : "");
 	g_free (text);
diff --git a/pgp/seahorse-keyserver-results.c b/pgp/seahorse-keyserver-results.c
index ab698dd..1a04468 100644
--- a/pgp/seahorse-keyserver-results.c
+++ b/pgp/seahorse-keyserver-results.c
@@ -482,6 +482,7 @@ on_search_completed (GObject *source,
 	seahorse_pgp_backend_search_remote_finish (NULL, result, &error);
 	if (error != NULL) {
 		window = seahorse_catalog_get_window (SEAHORSE_CATALOG (self));
+		g_dbus_error_strip_remote_error (error);
 		seahorse_util_show_error (window, _("The search for keys failed."), error->message);
 		g_error_free (error);
 	}



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]