Blob Blame History Raw
diff -up evolution-ews-3.8.5/src/calendar/e-cal-backend-ews.c.get-attachments-prototype-fix evolution-ews-3.8.5/src/calendar/e-cal-backend-ews.c
--- evolution-ews-3.8.5/src/calendar/e-cal-backend-ews.c.get-attachments-prototype-fix	2013-08-11 13:42:31.000000000 +0200
+++ evolution-ews-3.8.5/src/calendar/e-cal-backend-ews.c	2013-09-10 15:36:31.910691543 +0200
@@ -3164,6 +3164,7 @@ ews_get_attachments (ECalBackendEws *cbe
 	ECalComponent *comp;
 	const gchar *uid;
 	GSList *uris = NULL, *info_attachments = NULL;
+	GError *local_error = NULL;
 
 	e_ews_item_has_attachments (item, &has_attachment);
 	if (!has_attachment)
@@ -3193,7 +3194,7 @@ ews_get_attachments (ECalBackendEws *cbe
 		&info_attachments,
 		NULL, NULL,
 		cbews->priv->cancellable,
-		NULL)) {
+		&local_error)) {
 		icalcomponent *icalcomp;
 		icalproperty *icalprop;
 		icalparameter *icalparam;
@@ -3233,7 +3234,10 @@ ews_get_attachments (ECalBackendEws *cbe
 
 		g_slist_free_full (uris, g_free);
 		g_slist_free_full (info_attachments, (GDestroyNotify) e_ews_attachment_info_free);
+	} else {
+		g_warning ("%s: Failed to get attachments: %s", G_STRFUNC, local_error ? local_error->message : "Unknown error");
 	}
+	g_clear_error (&local_error);
 
 	PRIV_UNLOCK (cbews->priv);
 }
diff -up evolution-ews-3.8.5/src/server/e-ews-connection.c.get-attachments-prototype-fix evolution-ews-3.8.5/src/server/e-ews-connection.c
--- evolution-ews-3.8.5/src/server/e-ews-connection.c.get-attachments-prototype-fix	2013-08-11 13:42:31.000000000 +0200
+++ evolution-ews-3.8.5/src/server/e-ews-connection.c	2013-09-10 15:36:31.911691543 +0200
@@ -6202,7 +6202,7 @@ e_ews_connection_get_attachments (EEwsCo
 	g_object_unref (simple);
 }
 
-GSList *
+gboolean
 e_ews_connection_get_attachments_finish (EEwsConnection *cnc,
                                          GAsyncResult *result,
                                          GSList **items,
@@ -6211,24 +6211,24 @@ e_ews_connection_get_attachments_finish 
 	GSimpleAsyncResult *simple;
 	EwsAsyncData *async_data;
 
-	g_return_val_if_fail (cnc != NULL, NULL);
+	g_return_val_if_fail (cnc != NULL, FALSE);
 	g_return_val_if_fail (
 		g_simple_async_result_is_valid (
 		result, G_OBJECT (cnc), e_ews_connection_get_attachments),
-		NULL);
+		FALSE);
 
 	simple = G_SIMPLE_ASYNC_RESULT (result);
 	async_data = g_simple_async_result_get_op_res_gpointer (simple);
 
 	if (g_simple_async_result_propagate_error (simple, error))
-		return NULL;
+		return FALSE;
 
 	*items = async_data->items;
 
-	return async_data->items_created;
+	return TRUE;
 }
 
-GSList *
+gboolean
 e_ews_connection_get_attachments_sync (EEwsConnection *cnc,
                                        gint pri,
                                        const gchar *uid,
@@ -6243,9 +6243,9 @@ e_ews_connection_get_attachments_sync (E
 {
 	EAsyncClosure *closure;
 	GAsyncResult *result;
-	GSList *attachments_ids;
+	gboolean success;
 
-	g_return_val_if_fail (cnc != NULL, NULL);
+	g_return_val_if_fail (cnc != NULL, FALSE);
 
 	closure = e_async_closure_new ();
 
@@ -6256,12 +6256,12 @@ e_ews_connection_get_attachments_sync (E
 
 	result = e_async_closure_wait (closure);
 
-	attachments_ids = e_ews_connection_get_attachments_finish (
+	success = e_ews_connection_get_attachments_finish (
 		cnc, result, items, error);
 
 	e_async_closure_free (closure);
 
-	return attachments_ids;
+	return success;
 }
 
 static void
diff -up evolution-ews-3.8.5/src/server/e-ews-connection.h.get-attachments-prototype-fix evolution-ews-3.8.5/src/server/e-ews-connection.h
--- evolution-ews-3.8.5/src/server/e-ews-connection.h.get-attachments-prototype-fix	2013-08-11 13:42:31.000000000 +0200
+++ evolution-ews-3.8.5/src/server/e-ews-connection.h	2013-09-10 15:36:31.912691543 +0200
@@ -723,12 +723,12 @@ void		e_ews_connection_get_attachments
 						 GCancellable *cancellable,
 						 GAsyncReadyCallback callback,
 						 gpointer user_data);
-GSList *	e_ews_connection_get_attachments_finish
+gboolean	e_ews_connection_get_attachments_finish
 						(EEwsConnection *cnc,
 						 GAsyncResult *result,
 						 GSList **items,
 						 GError **error);
-GSList *	e_ews_connection_get_attachments_sync
+gboolean	e_ews_connection_get_attachments_sync
 						(EEwsConnection *cnc,
 						 gint pri,
 						 const gchar *comp_uid,