diff options
author | JP Rosevear <jpr@ximian.com> | 2002-09-05 00:19:21 +0800 |
---|---|---|
committer | JP Rosevear <jpr@src.gnome.org> | 2002-09-05 00:19:21 +0800 |
commit | f768bddb9325e7784477bcbcef0bce2a466a635a (patch) | |
tree | 7a5223bc31dc49e046ea4b41e0c3da35467b282c /calendar/pcs/cal.c | |
parent | ddaa0af2ceba5de217424eeddfa3f650049ddfa1 (diff) | |
download | gsoc2013-evolution-f768bddb9325e7784477bcbcef0bce2a466a635a.tar.gz gsoc2013-evolution-f768bddb9325e7784477bcbcef0bce2a466a635a.tar.zst gsoc2013-evolution-f768bddb9325e7784477bcbcef0bce2a466a635a.zip |
provide error message param, give a dialog with the message if we get a
2002-09-04 JP Rosevear <jpr@ximian.com>
* gui/itip-utils.c (comp_server_send): provide error message
param, give a dialog with the message if we get a busy result;
return TRUE if we succeed
(itip_send_comp): bail out if we had a problem sending via the
server
* cal-client/cal-client.c (cal_client_send_object): pass back
error message if we get the busy exception in the new param
* cal-client/cal-client.h: update proto
* pcs/cal.c (impl_Cal_send_object): dump backend error message
into Busy exception
* pcs/cal-backend.h: update proto
* pcs/cal-backend.c (cal_backend_send_object): take/pass new error
message parameter
* pcs/cal-backend-file.c (cal_backend_file_send_object): take new param
* idl/evolution-calendar.idl: add errorMsg to Busy exception
svn path=/trunk/; revision=17964
Diffstat (limited to 'calendar/pcs/cal.c')
-rw-r--r-- | calendar/pcs/cal.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/calendar/pcs/cal.c b/calendar/pcs/cal.c index 3abff9cf98..321a7c23db 100644 --- a/calendar/pcs/cal.c +++ b/calendar/pcs/cal.c @@ -452,12 +452,14 @@ impl_Cal_send_object (PortableServer_Servant servant, CalPrivate *priv; CORBA_char *calobj_copy; char *new_calobj; + GNOME_Evolution_Calendar_Cal_Busy *err; CalBackendSendResult result; + char error_msg[256]; cal = CAL (bonobo_object_from_servant (servant)); priv = cal->priv; - result = cal_backend_send_object (priv->backend, calobj, &new_calobj, user_list); + result = cal_backend_send_object (priv->backend, calobj, &new_calobj, user_list, error_msg); switch (result) { case CAL_BACKEND_SEND_SUCCESS: calobj_copy = CORBA_string_dup (new_calobj); @@ -470,7 +472,9 @@ impl_Cal_send_object (PortableServer_Servant servant, break; case CAL_BACKEND_SEND_BUSY: - bonobo_exception_set (ev, ex_GNOME_Evolution_Calendar_Cal_Busy); + err = GNOME_Evolution_Calendar_Cal_Busy__alloc (); + err->errorMsg = CORBA_string_dup (error_msg); + CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_GNOME_Evolution_Calendar_Cal_Busy, err); break; case CAL_BACKEND_SEND_PERMISSION_DENIED: |