+2005-07-07 [colin] 1.9.12cvs28
+
+ * src/imap.c
+ Remember the folder separator per IMAPFolder
+ instead of globally.
+ Revive the Session on noop; fixes bug #761
+ (mark a bunch of unread messages as read takes
+ forever)
+
2005-07-07 [darko] 1.9.12cvs27
* src/common/template.c
( cvs diff -u -r 1.179.2.48 -r 1.179.2.49 src/imap.c; ) > 1.9.12cvs25.patchset
( cvs diff -u -r 1.179.2.49 -r 1.179.2.50 src/imap.c; ) > 1.9.12cvs26.patchset
( cvs diff -u -r 1.1.2.23 -r 1.1.2.24 commitHelper; cvs diff -u -r 1.2.4.10 -r 1.2.4.11 src/common/template.c; ) > 1.9.12cvs27.patchset
+( cvs diff -u -r 1.179.2.50 -r 1.179.2.51 src/imap.c; ) > 1.9.12cvs28.patchset
GList *ns_personal;
GList *ns_others;
GList *ns_shared;
+ gchar last_seen_separator;
};
struct _IMAPSession
session->mbox = NULL;
session->cmd_count = 0;
session->folder = folder;
+ IMAP_FOLDER(session->folder)->last_seen_separator = 0;
#if USE_OPENSSL
if (account->ssl_imap == SSL_STARTTLS) {
{
IMAPNameSpace *namespace;
gchar separator = '/';
- static gchar last_seen_separator = 0;
- if (last_seen_separator == 0) {
+ if (folder->last_seen_separator == 0) {
clist * lep_list;
int r = imap_threaded_list((Folder *)folder, "", "", &lep_list);
if (r != MAILIMAP_NO_ERROR) {
struct mailimap_mailbox_list * mb;
mb = clist_content(iter);
- last_seen_separator = mb->mb_delimiter;
- debug_print("got separator: %c\n", last_seen_separator);
+ folder->last_seen_separator = mb->mb_delimiter;
+ debug_print("got separator: %c\n", folder->last_seen_separator);
}
mailimap_list_result_free(lep_list);
}
- if (last_seen_separator != 0) {
- debug_print("using separator: %c\n", last_seen_separator);
- return last_seen_separator;
+ if (folder->last_seen_separator != 0) {
+ debug_print("using separator: %c\n", folder->last_seen_separator);
+ return folder->last_seen_separator;
}
namespace = imap_find_namespace(folder, path);
return IMAP_ERROR;
}
session->exists = exists;
-
+ session_set_access_time(SESSION(session));
+
return IMAP_SUCCESS;
}