diff options
-rw-r--r-- | camel/ChangeLog | 8 | ||||
-rw-r--r-- | camel/camel-service.c | 7 | ||||
-rw-r--r-- | camel/providers/local/camel-maildir-store.c | 2 |
3 files changed, 15 insertions, 2 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog index b33a6c5110..7c865fe1ad 100644 --- a/camel/ChangeLog +++ b/camel/ChangeLog @@ -1,5 +1,13 @@ +2001-10-10 <NotZed@Ximian.com> + + * providers/local/camel-maildir-store.c (scan_dir): oops, we want + get_unread_message_count, not get_message_count! + 2001-10-09 <NotZed@Ximian.com> + * camel-service.c (camel_service_disconnect): Duplicate connect + code that unregisters a cancel op if we created one. + * camel-operation.c (camel_operation_progress): Another go at getting the logic right again. Make transients only update after 5 seconds (CAMEL_OPERATION_TRANSIENT_DELAY) diff --git a/camel/camel-service.c b/camel/camel-service.c index 4df8154d98..35ba782dfb 100644 --- a/camel/camel-service.c +++ b/camel/camel-service.c @@ -301,7 +301,8 @@ camel_service_disconnect (CamelService *service, gboolean clean, CamelException *ex) { gboolean res = TRUE; - + int unreg = FALSE; + CAMEL_SERVICE_LOCK (service, connect_lock); if (service->status == CAMEL_SERVICE_CONNECTED) { @@ -310,6 +311,7 @@ camel_service_disconnect (CamelService *service, gboolean clean, if (!service->connect_op) { service->connect_op = camel_operation_new (NULL, NULL); camel_operation_register (service->connect_op); + unreg = TRUE; } CAMEL_SERVICE_UNLOCK (service, connect_op_lock); @@ -318,6 +320,9 @@ camel_service_disconnect (CamelService *service, gboolean clean, service->status = CAMEL_SERVICE_DISCONNECTED; CAMEL_SERVICE_LOCK (service, connect_op_lock); + if (unreg) + camel_operation_unregister (service->connect_op); + camel_operation_unref (service->connect_op); service->connect_op = NULL; CAMEL_SERVICE_UNLOCK (service, connect_op_lock); diff --git a/camel/providers/local/camel-maildir-store.c b/camel/providers/local/camel-maildir-store.c index c60b162929..53952785d3 100644 --- a/camel/providers/local/camel-maildir-store.c +++ b/camel/providers/local/camel-maildir-store.c @@ -275,7 +275,7 @@ static int scan_dir(CamelStore *store, GHashTable *visited, char *root, const ch CAMEL_STORE_LOCK(store, cache_lock); folder = g_hash_table_lookup(store->folders, path); if (folder) - unread = camel_folder_get_message_count(folder); + unread = camel_folder_get_unread_message_count(folder); else unread = 0; CAMEL_STORE_UNLOCK(store, cache_lock); |