summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/camel/camel-offline-store.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/camel/camel-offline-store.c b/src/camel/camel-offline-store.c
index 148c6e5b0..73793493d 100644
--- a/src/camel/camel-offline-store.c
+++ b/src/camel/camel-offline-store.c
@@ -275,7 +275,8 @@ camel_offline_store_set_online_sync (CamelOfflineStore *store,
if (camel_service_get_connection_status (service) == CAMEL_SERVICE_CONNECTING)
return TRUE;
- return camel_service_connect_sync (service, cancellable, error);
+ if (!camel_service_connect_sync (service, cancellable, error))
+ return FALSE;
}
if (host_reachable) {
@@ -339,9 +340,11 @@ camel_offline_store_set_online_sync (CamelOfflineStore *store,
service, host_reachable, cancellable, error);
}
- store->priv->online = online;
+ if (store->priv->online != online) {
+ store->priv->online = online;
- g_object_notify (G_OBJECT (store), "online");
+ g_object_notify (G_OBJECT (store), "online");
+ }
return success;
}