if (status.nonpermanent_modseqs) {
client_send_line(client,
"* OK [NOMODSEQ] No permanent modsequences");
- } else {
+ } else if (!status.no_modseq_tracking) {
client_send_line(client,
t_strdup_printf("* OK [HIGHESTMODSEQ %llu] Highest",
(unsigned long long)status.highest_modseq));
status_r->first_recent_uid = hdr->first_recent_uid;
if ((items & STATUS_HIGHESTMODSEQ) != 0) {
status_r->nonpermanent_modseqs =
- mail_index_is_in_memory(box->index) ||
+ mail_index_is_in_memory(box->index);
+ status_r->no_modseq_tracking =
!mail_index_have_modseq_tracking(box->index);
status_r->highest_modseq =
mail_index_modseq_get_highest(box->view);
unsigned int allow_new_keywords:1;
/* Modseqs aren't permanent (index is in memory) (STATUS_HIGHESTMODSEQ) */
unsigned int nonpermanent_modseqs:1;
+ /* Modseq tracking has never been enabled for this mailbox
+ yet. (STATUS_HIGHESTMODSEQ) */
+ unsigned int no_modseq_tracking:1;
/* Messages have GUIDs (always set) */
unsigned int have_guids:1;