aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeffrey Stedfast <fejj@ximian.com>2002-08-08 14:22:24 +0800
committerJeffrey Stedfast <fejj@src.gnome.org>2002-08-08 14:22:24 +0800
commite0a73ef7072b61efcebd798423fcbee2a1991679 (patch)
tree38642c87e9f6a2b21dcd0cdeae1d34dd0aec8625
parentd5d4d529b2df76fddbaf4ac713e8f26ebc1f1815 (diff)
downloadgsoc2013-evolution-e0a73ef7072b61efcebd798423fcbee2a1991679.tar
gsoc2013-evolution-e0a73ef7072b61efcebd798423fcbee2a1991679.tar.gz
gsoc2013-evolution-e0a73ef7072b61efcebd798423fcbee2a1991679.tar.bz2
gsoc2013-evolution-e0a73ef7072b61efcebd798423fcbee2a1991679.tar.lz
gsoc2013-evolution-e0a73ef7072b61efcebd798423fcbee2a1991679.tar.xz
gsoc2013-evolution-e0a73ef7072b61efcebd798423fcbee2a1991679.tar.zst
gsoc2013-evolution-e0a73ef7072b61efcebd798423fcbee2a1991679.zip
Set some default permanent_flags. This is the other cause of bug #28038.
2002-08-08 Jeffrey Stedfast <fejj@ximian.com> * providers/imap/camel-imap-folder.c (camel_imap_folder_init): Set some default permanent_flags. This is the other cause of bug #28038. (imap_refresh_info): After calling camel_imap_command() with a NULL format value (this is a shortcut to change the current_folder by SELECTing it), call camel_imap_folder_selected(). This may have been why permanent_flags never got set on the folder even after going online in bug #28038. (imap_update_summary): Same here. Also NULL-guard camel_imap_response_free(). svn path=/trunk/; revision=17743
-rw-r--r--camel/ChangeLog7
-rw-r--r--camel/providers/imap/camel-imap-folder.c12
2 files changed, 16 insertions, 3 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog
index ea8e16e36b..6a0b9c8cd4 100644
--- a/camel/ChangeLog
+++ b/camel/ChangeLog
@@ -3,6 +3,13 @@
* providers/imap/camel-imap-folder.c (camel_imap_folder_init): Set
some default permanent_flags. This is the other cause of bug
#28038.
+ (imap_refresh_info): After calling camel_imap_command() with a
+ NULL format value (this is a shortcut to change the current_folder
+ by SELECTing it), call camel_imap_folder_selected(). This may have
+ been why permanent_flags never got set on the folder even after
+ going online in bug #28038.
+ (imap_update_summary): Same here. Also NULL-guard
+ camel_imap_response_free().
2002-08-07 Jeffrey Stedfast <fejj@ximian.com>
diff --git a/camel/providers/imap/camel-imap-folder.c b/camel/providers/imap/camel-imap-folder.c
index 9e390800f4..7976c7d19e 100644
--- a/camel/providers/imap/camel-imap-folder.c
+++ b/camel/providers/imap/camel-imap-folder.c
@@ -473,13 +473,16 @@ imap_refresh_info (CamelFolder *folder, CamelException *ex)
}
/* If the folder isn't selected, select it (which will force
- * a rescan if one is needed.
+ * a rescan if one is needed).
*/
CAMEL_IMAP_STORE_LOCK (imap_store, command_lock);
if (imap_store->current_folder != folder) {
CAMEL_IMAP_STORE_UNLOCK (imap_store, command_lock);
response = camel_imap_command (imap_store, folder, ex, NULL);
- camel_imap_response_free (imap_store, response);
+ if (response) {
+ camel_imap_folder_selected (folder, response, NULL);
+ camel_imap_response_free (imap_store, response);
+ }
return;
}
CAMEL_IMAP_STORE_UNLOCK (imap_store, command_lock);
@@ -2264,7 +2267,10 @@ imap_update_summary (CamelFolder *folder, int exists,
/* now re-select it and process the EXISTS response */
response = camel_imap_command (imap_store, folder, ex, NULL);
- camel_imap_response_free (imap_store, response);
+ if (response) {
+ camel_imap_folder_selected (folder, response, NULL);
+ camel_imap_response_free (imap_store, response);
+ }
}
return;