This is an automated email from the ASF dual-hosted git repository. rcordier pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/james-project.git
commit d8bcd447a579f658c9377b178c01608a577c5fc0 Author: Benoit Tellier <[email protected]> AuthorDate: Fri Feb 7 11:58:07 2020 +0700 JAMES-3043 IMAP selected mailbox checks should rely on mailboxId Currently they rely on mailboxPath... Doing them by mailboxId will: - avoid a mailboxPath lookup - avoid rename concurrency issues Concerned processors: Append, Select, Examine --- .../org/apache/james/imap/processor/AbstractSelectionProcessor.java | 2 +- .../src/main/java/org/apache/james/imap/processor/AppendProcessor.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/protocols/imap/src/main/java/org/apache/james/imap/processor/AbstractSelectionProcessor.java b/protocols/imap/src/main/java/org/apache/james/imap/processor/AbstractSelectionProcessor.java index e7a1184..f00345e 100644 --- a/protocols/imap/src/main/java/org/apache/james/imap/processor/AbstractSelectionProcessor.java +++ b/protocols/imap/src/main/java/org/apache/james/imap/processor/AbstractSelectionProcessor.java @@ -387,7 +387,7 @@ abstract class AbstractSelectionProcessor<R extends AbstractMailboxSelectionRequ final SelectedMailbox sessionMailbox; final SelectedMailbox currentMailbox = session.getSelected(); - if (currentMailbox == null || !currentMailbox.getPath().equals(mailboxPath)) { + if (currentMailbox == null || !currentMailbox.getMailboxId().equals(mailbox.getId())) { // QRESYNC EXTENSION // diff --git a/protocols/imap/src/main/java/org/apache/james/imap/processor/AppendProcessor.java b/protocols/imap/src/main/java/org/apache/james/imap/processor/AppendProcessor.java index 114281b..707a356 100644 --- a/protocols/imap/src/main/java/org/apache/james/imap/processor/AppendProcessor.java +++ b/protocols/imap/src/main/java/org/apache/james/imap/processor/AppendProcessor.java @@ -126,7 +126,7 @@ public class AppendProcessor extends AbstractMailboxProcessor<AppendRequest> { final MailboxSession mailboxSession = session.getMailboxSession(); final SelectedMailbox selectedMailbox = session.getSelected(); final MailboxManager mailboxManager = getMailboxManager(); - final boolean isSelectedMailbox = selectedMailbox != null && selectedMailbox.getPath().equals(mailboxPath); + final boolean isSelectedMailbox = selectedMailbox != null && selectedMailbox.getMailboxId().equals(mailbox.getId()); final ComposedMessageId messageId = mailbox.appendMessage(message, datetime, mailboxSession, !isSelectedMailbox, flagsToBeSet); if (isSelectedMailbox) { selectedMailbox.addRecent(messageId.getUid()); --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
