r15084 - gnucash/trunk/src/gnome - Improve error reporting of QSF import a little bit. Patch provided by Georgi Mirchev, bug#343724.
Christian Stimming
cstim at cvs.gnucash.org
Sat Nov 4 16:57:16 EST 2006
Author: cstim
Date: 2006-11-04 16:57:16 -0500 (Sat, 04 Nov 2006)
New Revision: 15084
Trac: http://svn.gnucash.org/trac/changeset/15084
Modified:
gnucash/trunk/src/gnome/druid-merge.c
gnucash/trunk/src/gnome/gnc-plugin-basic-commands.c
Log:
Improve error reporting of QSF import a little bit. Patch provided by Georgi Mirchev, bug#343724.
Modified: gnucash/trunk/src/gnome/druid-merge.c
===================================================================
--- gnucash/trunk/src/gnome/druid-merge.c 2006-11-04 21:50:17 UTC (rev 15083)
+++ gnucash/trunk/src/gnome/druid-merge.c 2006-11-04 21:57:16 UTC (rev 15084)
@@ -220,7 +220,7 @@
gnc_suspend_gui_refresh ();
result = qof_book_merge_commit(mergeData);
if(result != 0) {
- message = _("Error: the Commit operation failed.");
+ message = g_strdup_printf(_("Error: the Commit operation failed, error code %d."), result);
top = gtk_widget_get_toplevel (GTK_WIDGET (gnomedruidpage));
gnc_error_dialog(top, message);
}
Modified: gnucash/trunk/src/gnome/gnc-plugin-basic-commands.c
===================================================================
--- gnucash/trunk/src/gnome/gnc-plugin-basic-commands.c 2006-11-04 21:50:17 UTC (rev 15083)
+++ gnucash/trunk/src/gnome/gnc-plugin-basic-commands.c 2006-11-04 21:57:16 UTC (rev 15084)
@@ -364,8 +364,9 @@
qsf_file_select_ok(GtkWidget *w, GtkFileSelection *fs )
{
QofSession *qsf_session, *first_session;
- const gchar *filename;
+ const gchar *filename, *message, *error_message;
QofBook *original;
+ QofBackendError err;
ENTER (" ");
qof_event_suspend();
@@ -376,6 +377,20 @@
qsf_session = qof_session_new();
qof_session_begin(qsf_session, filename, TRUE, FALSE);
qof_session_load(qsf_session, NULL);
+ err = qof_session_get_error(qsf_session);
+ if (err != ERR_BACKEND_NO_ERR) {
+ error_message = qof_session_get_error_message(qsf_session);
+ if (!error_message)
+ error_message = "";
+ message = g_strdup_printf(_("Error: Loading failed, error code %d - %s."), err, error_message);
+ PERR("%s", message);
+ qof_session_destroy(qsf_session);
+ qof_event_resume();
+ gnc_error_dialog(gnc_ui_get_toplevel(), message);
+ LEAVE (" ");
+ return;
+ }
+
qof_event_resume();
gnc_ui_qsf_import_merge_druid(first_session, qsf_session);
LEAVE (" ");
More information about the gnucash-changes
mailing list