From 63ca6c19ab323142c1362afe95f6acf1259d2ecf Mon Sep 17 00:00:00 2001 From: Not Zed Date: Wed, 12 May 2004 03:32:19 +0000 Subject: add GError return for error details & return errors. 2004-05-11 Not Zed * gui/migration.c (migrate_calendars, migrate_tasks): add GError return for error details & return errors. * gui/calendar-component.c (impl_upgradeFromVersion): fix for api change, and erturn exception if we need to. svn path=/trunk/; revision=25865 --- calendar/gui/tasks-component.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'calendar/gui/tasks-component.c') diff --git a/calendar/gui/tasks-component.c b/calendar/gui/tasks-component.c index d0b556095c..60559f825a 100644 --- a/calendar/gui/tasks-component.c +++ b/calendar/gui/tasks-component.c @@ -430,16 +430,27 @@ model_rows_deleted_cb (ETableModel *etm, int row, int count, TasksComponentView /* Evolution::Component CORBA methods */ -static CORBA_boolean +static void impl_upgradeFromVersion (PortableServer_Servant servant, CORBA_short major, CORBA_short minor, CORBA_short revision, CORBA_Environment *ev) { + GError *err = NULL; TasksComponent *component = TASKS_COMPONENT (bonobo_object_from_servant (servant)); - return migrate_tasks (component, major, minor, revision); + if (!migrate_tasks(component, major, minor, revision, &err)) { + GNOME_Evolution_Component_UpgradeFailed *failedex; + + failedex = GNOME_Evolution_Component_UpgradeFailed__alloc(); + failedex->what = CORBA_string_dup(_("Failed upgrading tasks.")); + failedex->why = CORBA_string_dup(err->message); + CORBA_exception_set(ev, CORBA_USER_EXCEPTION, ex_GNOME_Evolution_Component_UpgradeFailed, failedex); + } + + if (err) + g_error_free(err); } static void -- cgit v1.2.3