Detect errors on fetch_headers

The search can be too long on dovecot, but we never notice because
fetch_headers doesn't distinguish between error and empty result.
We shouldn't normally get an empty result though, so this should work.
This commit is contained in:
Christian Mollekopf 2024-05-08 09:24:27 +02:00
parent 08ede7da0e
commit dcf4c8aeda

View file

@ -240,6 +240,10 @@ class kolab_tags_engine
} else {
$msgs = $storage->fetch_headers($mbox, $uids, false);
}
// fetch_headers doesn't detect IMAP errors, so we make sure we get something back.
if (!empty($uids) && empty($msgs)) {
throw new Exception("Failed to find relation members, check the IMAP log.");
}
$members = array_merge($members, $this->build_members($mbox, $msgs));
}