[evolution-ews] Return an error when actions are being performed on camel folders while in offline mode



commit f431617f64f2c5f0285b022f645c8c74210defb5
Author: Or Goshen <orx goshen intel com>
Date:   Tue Jul 12 15:04:52 2011 +0300

    Return an error when actions are being performed on camel folders while in offline mode

 src/camel/camel-ews-store.c |   20 ++++++++++++++++++++
 1 files changed, 20 insertions(+), 0 deletions(-)
---
diff --git a/src/camel/camel-ews-store.c b/src/camel/camel-ews-store.c
index 1db63ec..017bc1f 100644
--- a/src/camel/camel-ews-store.c
+++ b/src/camel/camel-ews-store.c
@@ -567,6 +567,13 @@ ews_create_folder_sync (CamelStore *store,
 		}
 	}
 
+	if (!ews_store->priv->cnc) {
+		g_set_error (error, CAMEL_ERROR, CAMEL_ERROR_GENERIC,
+			     _("Cant perform actions on the folder while in offline mode"));
+		if (fid) g_free (fid);
+		return NULL;
+	}
+
 	/* Make the call */
 	if (!e_ews_connection_create_folder (ews_store->priv->cnc,
 					     EWS_PRIORITY_MEDIUM, fid,
@@ -617,6 +624,13 @@ ews_delete_folder_sync	(CamelStore *store,
 		return FALSE;
 	}
 
+	if (!ews_store->priv->cnc) {
+		g_set_error (error, CAMEL_ERROR, CAMEL_ERROR_GENERIC,
+			     _("Cant perform actions on the folder while in offline mode"));
+		g_free (fid);
+		return FALSE;
+	}
+
 	if (!e_ews_connection_delete_folder (ews_store->priv->cnc,
 					     EWS_PRIORITY_MEDIUM,
 					     fid, FALSE, "HardDelete",
@@ -679,6 +693,12 @@ ews_rename_folder_sync	(CamelStore *store,
 	if (!strcmp (old_name, new_name))
 		return TRUE;
 
+	if (!ews_store->priv->cnc) {
+		g_set_error (error, CAMEL_ERROR, CAMEL_ERROR_GENERIC,
+			     _("Cant perform actions on the folder while in offline mode"));
+		return FALSE;
+	}
+
 	fid = camel_ews_store_summary_get_folder_id_from_name (ews_summary, old_name);
 	if (!fid) {
 		g_set_error (error, CAMEL_STORE_ERROR,



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]