aboutsummaryrefslogtreecommitdiffstats
path: root/calendar
diff options
context:
space:
mode:
authorSuman Manjunath <msuman@src.gnome.org>2008-11-28 16:04:21 +0800
committerSuman Manjunath <msuman@src.gnome.org>2008-11-28 16:04:21 +0800
commit4f015ce67a104d6c9476356394dc78443d6eb06f (patch)
tree8ef3944a1976292328190033b7d88b0f55b63de0 /calendar
parenta75b727efee43acf8e4975b264a85ea743529526 (diff)
downloadgsoc2013-evolution-4f015ce67a104d6c9476356394dc78443d6eb06f.tar
gsoc2013-evolution-4f015ce67a104d6c9476356394dc78443d6eb06f.tar.gz
gsoc2013-evolution-4f015ce67a104d6c9476356394dc78443d6eb06f.tar.bz2
gsoc2013-evolution-4f015ce67a104d6c9476356394dc78443d6eb06f.tar.lz
gsoc2013-evolution-4f015ce67a104d6c9476356394dc78443d6eb06f.tar.xz
gsoc2013-evolution-4f015ce67a104d6c9476356394dc78443d6eb06f.tar.zst
gsoc2013-evolution-4f015ce67a104d6c9476356394dc78443d6eb06f.zip
Fix for bug #561467 - some changes in the core code needed for evolution-mapi.
svn path=/trunk/; revision=36818
Diffstat (limited to 'calendar')
-rw-r--r--calendar/ChangeLog9
-rw-r--r--calendar/gui/dialogs/comp-editor.c3
-rw-r--r--calendar/gui/itip-utils.c11
3 files changed, 21 insertions, 2 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog
index e0f292421f..867f7bacbb 100644
--- a/calendar/ChangeLog
+++ b/calendar/ChangeLog
@@ -1,3 +1,12 @@
+2008-11-28 Suman Manjunath <msuman@novell.com>
+
+ ** Fix for bug #561467
+
+ * gui/dialogs/comp-editor.c (real_send_comp): Don't replace
+ attachment list if backend can CREATE_MESSAGES
+ * gui/itip-utils.c (itip_send_comp): Check whether backend
+ could handle sending requests/updates.
+
2008-11-25 Milan Crha <mcrha@redhat.com>
** Fix for bug #560138
diff --git a/calendar/gui/dialogs/comp-editor.c b/calendar/gui/dialogs/comp-editor.c
index 198d60356c..4067861fc2 100644
--- a/calendar/gui/dialogs/comp-editor.c
+++ b/calendar/gui/dialogs/comp-editor.c
@@ -3046,7 +3046,8 @@ real_send_comp (CompEditor *editor, ECalComponentItipMethod method)
set_attendees_for_delegation (send_comp, address, method);
}
- if (!e_cal_component_has_attachments (priv->comp)) {
+ if (!e_cal_component_has_attachments (priv->comp)
+ || e_cal_get_static_capability (priv->client, CAL_STATIC_CAPABILITY_CREATE_MESSAGES)) {
if (itip_send_comp (method, send_comp, priv->client,
NULL, NULL, users)) {
g_object_unref (send_comp);
diff --git a/calendar/gui/itip-utils.c b/calendar/gui/itip-utils.c
index 5a954b5ff9..5b292e1901 100644
--- a/calendar/gui/itip-utils.c
+++ b/calendar/gui/itip-utils.c
@@ -1147,7 +1147,7 @@ itip_send_comp (ECalComponentItipMethod method, ECalComponent *send_comp,
gchar *subject = NULL;
gboolean retval = FALSE;
- /* check whether backend could handle sending requests/updates */
+ /* check whether backend could handle auto-saving requests/updates */
if (method != E_CAL_COMPONENT_METHOD_PUBLISH && e_cal_get_save_schedules (client))
return TRUE;
@@ -1157,6 +1157,15 @@ itip_send_comp (ECalComponentItipMethod method, ECalComponent *send_comp,
goto cleanup;
}
+ /* check whether backend could handle sending requests/updates */
+ if (method != E_CAL_COMPONENT_METHOD_PUBLISH && e_cal_get_static_capability (client, CAL_STATIC_CAPABILITY_CREATE_MESSAGES)) {
+ if (users) {
+ g_list_foreach (users, (GFunc) g_free, NULL);
+ g_list_free (users);
+ }
+ return TRUE;
+ }
+
/* Tidy up the comp */
comp = comp_compliant (method, send_comp, client, zones);