diff options
author | Jeffrey Stedfast <fejj@novell.com> | 2005-01-07 06:12:57 +0800 |
---|---|---|
committer | Jeffrey Stedfast <fejj@src.gnome.org> | 2005-01-07 06:12:57 +0800 |
commit | 5effb957e90226a4c99e9f9bbbf6b27378d943c8 (patch) | |
tree | 3e13d2c695953472661b536ff24334ebbdcceb61 /mail/mail-ops.c | |
parent | 2c781417e6356ca0b5ce223ef2e3297b52396fea (diff) | |
download | gsoc2013-evolution-5effb957e90226a4c99e9f9bbbf6b27378d943c8.tar.gz gsoc2013-evolution-5effb957e90226a4c99e9f9bbbf6b27378d943c8.tar.zst gsoc2013-evolution-5effb957e90226a4c99e9f9bbbf6b27378d943c8.zip |
Handle the CamelOfflineStore case just like the CamelDiscoStore case.
2005-01-06 Jeffrey Stedfast <fejj@novell.com>
* mail-folder-cache.c (mail_note_store): Handle the
CamelOfflineStore case just like the CamelDiscoStore case.
* mail-ops.c (prep_offline_do): Since we can't kill off
CamelDisco* (groupwise is using it), we have to handle both
CamelOfflineFolder and CamelDiscoFolder for now.
(set_offline_do): Same.
svn path=/trunk/; revision=28256
Diffstat (limited to 'mail/mail-ops.c')
-rw-r--r-- | mail/mail-ops.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/mail/mail-ops.c b/mail/mail-ops.c index 1d7c7b710d..76fe6a5533 100644 --- a/mail/mail-ops.c +++ b/mail/mail-ops.c @@ -42,6 +42,8 @@ #include <camel/camel-stream-filter.h> #include <camel/camel-stream-fs.h> #include <camel/camel-mime-filter-charset.h> +#include <camel/camel-offline-folder.h> +#include <camel/camel-offline-store.h> #include <camel/camel-disco-folder.h> #include <camel/camel-disco-store.h> #include <camel/camel-operation.h> @@ -2107,6 +2109,8 @@ static void prep_offline_do(struct _mail_msg *mm) camel_disco_folder_prepare_for_offline((CamelDiscoFolder *)folder, "(match-all)", &mm->ex); + } else if (CAMEL_IS_OFFLINE_FOLDER (folder)) { + camel_offline_folder_downsync ((CamelOfflineFolder *) folder, "(match-all)", &mm->ex); } /* prepare_for_offline should do this? */ /* of course it should all be atomic, but ... */ @@ -2200,6 +2204,18 @@ static void set_offline_do(struct _mail_msg *mm) &mm->ex); return; } + } else if (CAMEL_IS_OFFLINE_STORE (m->store)) { + if (!m->offline) { + camel_offline_store_set_network_state (CAMEL_OFFLINE_STORE (m->store), + CAMEL_OFFLINE_STORE_NETWORK_AVAIL, + &mm->ex); + return; + } else { + camel_offline_store_set_network_state (CAMEL_OFFLINE_STORE (m->store), + CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL, + &mm->ex); + return; + } } if (m->offline) |