diff options
author | Nick Schermer <nick@xfce.org> | 2010-01-28 19:06:22 +0100 |
---|---|---|
committer | Nick Schermer <nick@xfce.org> | 2010-01-28 19:50:23 +0100 |
commit | 8f30d3dbd24aa678d0331b8369abf4a2fcdc0e3d (patch) | |
tree | b6d655d201c3ee6882b7aa67472a62f4ac411966 /engines | |
parent | c59e0733a7fcf79778b6f51d4846981070dbd88c (diff) | |
download | xfce4-session-8f30d3dbd24aa678d0331b8369abf4a2fcdc0e3d.tar.gz |
Send the full error to the error dialog.
Diffstat (limited to 'engines')
-rw-r--r-- | engines/balou/config.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/engines/balou/config.c b/engines/balou/config.c index 19d3fa43..4349fccf 100644 --- a/engines/balou/config.c +++ b/engines/balou/config.c @@ -366,6 +366,8 @@ config_remove_theme (GtkWidget *item, gchar *name; gchar* argv[4]; gint status; + GError *error = NULL; + gchar *error_msg = NULL; iter = (GtkTreeIter *) g_object_get_data (G_OBJECT (menu), "iter"); if (G_UNLIKELY (iter == NULL)) @@ -389,12 +391,18 @@ config_remove_theme (GtkWidget *item, argv[3] = NULL; result = g_spawn_sync (NULL, argv, NULL, 0, NULL, NULL, - NULL, NULL, &status, NULL); + NULL, &error_msg, &status, NULL); if (!result || status != 0) { - xfce_dialog_show_error (NULL, NULL, _("Unable to remove splash theme \"%s\" from directory " - "%s."), name, directory); + if (!error && error_msg) + g_set_error_literal (&error, G_SPAWN_ERROR, G_SPAWN_ERROR_FAILED, error_msg); + + xfce_dialog_show_error (NULL, error, + _("Unable to remove splash theme \"%s\" from directory %s."), + name, directory); + if (error) + g_error_free (error); } else { @@ -403,6 +411,7 @@ config_remove_theme (GtkWidget *item, g_free (directory); g_free (name); + g_free (error_msg); } #endif |