diff options
author | Dan Winship <danw@src.gnome.org> | 2001-05-27 01:17:10 +0800 |
---|---|---|
committer | Dan Winship <danw@src.gnome.org> | 2001-05-27 01:17:10 +0800 |
commit | 364cdf26e787ac19200de24beb147c9ac229c16b (patch) | |
tree | e58a9cee226f32246f43d246c80a731c4bda5d80 /mail | |
parent | 1f50ab36a1e3835e5b701c3eb0d0867a15386067 (diff) | |
download | gsoc2013-evolution-364cdf26e787ac19200de24beb147c9ac229c16b.tar.gz gsoc2013-evolution-364cdf26e787ac19200de24beb147c9ac229c16b.tar.zst gsoc2013-evolution-364cdf26e787ac19200de24beb147c9ac229c16b.zip |
Add a "need_rescan" flag saying if we want to rescan the entire folder for
* providers/imap/camel-imap-folder.c: Add a "need_rescan" flag
saying if we want to rescan the entire folder for flag changes
next time it's selected.
(camel_imap_folder_init): Set need_rescan TRUE.
(camel_imap_folder_selected): If need_rescan is TRUE, call
imap_rescan.
(imap_refresh_info): Only do a full rescan if need_rescan is TRUE.
Otherwise just do a NOOP, making this a MUCH more lightweight
operation. Also, don't call imap_rescan directly if the folder
isn't selected, since that could end up causing the folder to be
scanned *twice* (imap_rescan -> camel_imap_command ->
camel_imap_folder_selected -> imap_rescan).
(imap_rescan): Set need_rescan FALSE.
(imap_sync_online): Don't NOOP if no changes were pushed: the
caller will call refresh_info if it wants to poll for changes.
Fixes evolution-mail doing lots of unnecessary extra work at
quit time.
svn path=/trunk/; revision=10010
Diffstat (limited to 'mail')
0 files changed, 0 insertions, 0 deletions