This is an automated email from the ASF dual-hosted git repository.

chibenwa pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git

commit 06d26702e0d31cf01b4da3a98c999623372418b3
Author: Benoit TELLIER <[email protected]>
AuthorDate: Tue Jun 23 15:13:42 2026 +0200

    [FIX] findNonPersonalMailboxes: handle null rights
---
 .../org/apache/james/mailbox/postgres/mail/PostgresMailboxMapper.java  | 3 ++-
 .../james/mailbox/postgres/mail/RLSSupportPostgresMailboxMapper.java   | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git 
a/mailbox/postgres/src/main/java/org/apache/james/mailbox/postgres/mail/PostgresMailboxMapper.java
 
b/mailbox/postgres/src/main/java/org/apache/james/mailbox/postgres/mail/PostgresMailboxMapper.java
index e68bb3f185..51d08e038d 100644
--- 
a/mailbox/postgres/src/main/java/org/apache/james/mailbox/postgres/mail/PostgresMailboxMapper.java
+++ 
b/mailbox/postgres/src/main/java/org/apache/james/mailbox/postgres/mail/PostgresMailboxMapper.java
@@ -90,8 +90,9 @@ public class PostgresMailboxMapper implements MailboxMapper {
     }
 
     public Flux<Mailbox> findNonPersonalMailboxes(Username userName, 
MailboxACL.Right right) {
+        MailboxACL.EntryKey entryKey = 
MailboxACL.EntryKey.createUserEntryKey(userName);
         return postgresMailboxDAO.findMailboxesByUsername(userName)
-            .filter(postgresMailbox -> 
postgresMailbox.getACL().getEntries().get(MailboxACL.EntryKey.createUserEntryKey(userName)).contains(right))
+            .filter(postgresMailbox -> 
postgresMailbox.getACL().getEntries().getOrDefault(entryKey, 
MailboxACL.NO_RIGHTS).contains(right))
             .map(Function.identity());
     }
 
diff --git 
a/mailbox/postgres/src/main/java/org/apache/james/mailbox/postgres/mail/RLSSupportPostgresMailboxMapper.java
 
b/mailbox/postgres/src/main/java/org/apache/james/mailbox/postgres/mail/RLSSupportPostgresMailboxMapper.java
index efa77a24eb..b5ed451a12 100644
--- 
a/mailbox/postgres/src/main/java/org/apache/james/mailbox/postgres/mail/RLSSupportPostgresMailboxMapper.java
+++ 
b/mailbox/postgres/src/main/java/org/apache/james/mailbox/postgres/mail/RLSSupportPostgresMailboxMapper.java
@@ -47,11 +47,12 @@ public class RLSSupportPostgresMailboxMapper extends 
PostgresMailboxMapper {
 
     @Override
     public Flux<Mailbox> findNonPersonalMailboxes(Username userName, 
MailboxACL.Right right) {
+        MailboxACL.EntryKey entryKey = 
MailboxACL.EntryKey.createUserEntryKey(userName);
         return postgresMailboxMemberDAO.findMailboxIdByUsername(userName)
             .collectList()
             .filter(postgresMailboxIds -> !postgresMailboxIds.isEmpty())
             .flatMapMany(postgresMailboxDAO::findMailboxByIds)
-            .filter(postgresMailbox -> 
postgresMailbox.getACL().getEntries().get(MailboxACL.EntryKey.createUserEntryKey(userName)).contains(right))
+            .filter(postgresMailbox -> 
postgresMailbox.getACL().getEntries().getOrDefault(entryKey, 
MailboxACL.NO_RIGHTS).contains(right))
             .map(Function.identity());
     }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to