Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/mail.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/lib/IMAP
diff options
context:
space:
mode:
authorChristoph Wurst <christoph@winzerhof-wurst.at>2021-05-07 09:44:04 +0300
committerChristoph Wurst <christoph@winzerhof-wurst.at>2021-05-07 09:44:04 +0300
commitf242ea0ab12e3007281fd9dcf333e23ab1f329f4 (patch)
tree1c7042b64eeb58f8764956759736acd118cd8af8 /lib/IMAP
parent1e7ea4f257f438c4958f7b2652e607d659705929 (diff)
Fix reading missing mailbox stats
Apparently there are occasions where we can't read the number of messages of a mailbox. In that case the account setup fails with ``General error: 1364 Field 'messages' doesn't have a default value"`` on MySQL. This adds sane fallback values for the two mailbox stats. Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
Diffstat (limited to 'lib/IMAP')
-rw-r--r--lib/IMAP/MailboxSync.php8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/IMAP/MailboxSync.php b/lib/IMAP/MailboxSync.php
index 4e22d1bf2..0cae85263 100644
--- a/lib/IMAP/MailboxSync.php
+++ b/lib/IMAP/MailboxSync.php
@@ -191,8 +191,8 @@ class MailboxSync {
$mailbox->setDelimiter($folder->getDelimiter());
$mailbox->setAttributes(json_encode($folder->getAttributes()));
$mailbox->setDelimiter($folder->getDelimiter());
- $mailbox->setMessages($folder->getStatus()['messages']);
- $mailbox->setUnseen($folder->getStatus()['unseen']);
+ $mailbox->setMessages($folder->getStatus()['messages'] ?? 0);
+ $mailbox->setUnseen($folder->getStatus()['unseen'] ?? 0);
$mailbox->setSelectable(!in_array('\noselect', $folder->getAttributes()));
$mailbox->setSpecialUse(json_encode($folder->getSpecialUse()));
$this->mailboxMapper->update($mailbox);
@@ -204,8 +204,8 @@ class MailboxSync {
$mailbox->setAccountId($account->getId());
$mailbox->setAttributes(json_encode($folder->getAttributes()));
$mailbox->setDelimiter($folder->getDelimiter());
- $mailbox->setMessages($folder->getStatus()['messages']);
- $mailbox->setUnseen($folder->getStatus()['unseen']);
+ $mailbox->setMessages($folder->getStatus()['messages'] ?? 0);
+ $mailbox->setUnseen($folder->getStatus()['unseen'] ?? 0);
$mailbox->setSelectable(!in_array('\noselect', $folder->getAttributes()));
$mailbox->setSpecialUse(json_encode($folder->getSpecialUse()));
$this->mailboxMapper->insert($mailbox);