This is an automated email from the ASF dual-hosted git repository. btellier pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/james-project.git
commit ba34e7242c95fa215b871a2af133e75ee14952ad Author: Benoit TELLIER <btell...@linagora.com> AuthorDate: Wed Feb 21 14:21:22 2024 +0100 JAMES-4007 ImapChannelUpstreamHandler should always cleanup INBOUND message It needs to account for unexecuted messages, rejected messages, cancelled subscriptions. --- .../apache/james/imapserver/netty/ImapChannelUpstreamHandler.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/server/protocols/protocols-imap4/src/main/java/org/apache/james/imapserver/netty/ImapChannelUpstreamHandler.java b/server/protocols/protocols-imap4/src/main/java/org/apache/james/imapserver/netty/ImapChannelUpstreamHandler.java index c0ef774c19..4e9e5985fd 100644 --- a/server/protocols/protocols-imap4/src/main/java/org/apache/james/imapserver/netty/ImapChannelUpstreamHandler.java +++ b/server/protocols/protocols-imap4/src/main/java/org/apache/james/imapserver/netty/ImapChannelUpstreamHandler.java @@ -405,9 +405,6 @@ public class ImapChannelUpstreamHandler extends ChannelInboundHandlerAdapter imp } if (signal.isOnComplete() || signal.isOnError()) { afterIDLEUponProcessing(ctx); - if (message instanceof Closeable) { - ((Closeable) message).close(); - } } if (signal.hasError()) { ctx.fireExceptionCaught(signal.getThrowable()); @@ -419,6 +416,11 @@ public class ImapChannelUpstreamHandler extends ChannelInboundHandlerAdapter imp .contextWrite(ReactorUtils.context("imap", mdc(session))), message) // Manage throttling errors .doOnError(ctx::fireExceptionCaught) + .doFinally(Throwing.consumer(any -> { + if (message instanceof Closeable) { + ((Closeable) message).close(); + } + })) .subscribe(); disposableAttribute.set(disposable); } --------------------------------------------------------------------- To unsubscribe, e-mail: notifications-unsubscr...@james.apache.org For additional commands, e-mail: notifications-h...@james.apache.org