This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/tomcat.git
commit 147cf5735c80b1fe08b2b38ff2d6a4e7c4fd4e75 Author: Mark Thomas <ma...@apache.org> AuthorDate: Fri Sep 8 18:34:36 2023 +0100 Fix BZ 67235 - fix NPE on dispatch from AsyncListener.onError --- java/org/apache/catalina/connector/CoyoteAdapter.java | 7 +++---- webapps/docs/changelog.xml | 9 +++++++++ 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/java/org/apache/catalina/connector/CoyoteAdapter.java b/java/org/apache/catalina/connector/CoyoteAdapter.java index a6dc0cb3a3..edad0edc84 100644 --- a/java/org/apache/catalina/connector/CoyoteAdapter.java +++ b/java/org/apache/catalina/connector/CoyoteAdapter.java @@ -249,10 +249,9 @@ public class CoyoteAdapter implements Adapter { AtomicBoolean error = new AtomicBoolean(false); res.action(ActionCode.IS_ERROR, error); if (error.get()) { - if (request.isAsyncCompleting()) { - // Connection will be forcibly closed which will prevent - // completion happening at the usual point. Need to trigger - // call to onComplete() here. + if (request.isAsyncCompleting() || request.isAsyncDispatching()) { + // Connection will be forcibly closed which will prevent completion/dispatch happening at the usual + // point. Trigger post processing here. res.action(ActionCode.ASYNC_POST_PROCESS, null); } success = false; diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml index 8da3c35acf..bfeccf0b0d 100644 --- a/webapps/docs/changelog.xml +++ b/webapps/docs/changelog.xml @@ -113,6 +113,15 @@ </fix> </changelog> </subsection> + <subsection name="Coyote"> + <changelog> + <fix> + <bug>67235</bug>: Fix a <code>NullPointerException</code> when an + <code>AsyncListener</code> handles an error with a dispatch rather than + a complete. (markt) + </fix> + </changelog> + </subsection> </section> <section name="Tomcat 11.0.0-M11 (markt)" rtext="2023-08-25"> <subsection name="Catalina"> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org