From d5a6660cba7f51589468937bf3bbad4db7810371 Mon Sep 17 00:00:00 2001 From: remm Date: Mon, 27 Sep 2021 20:34:18 +0200 Subject: [PATCH] Close WebConnection The internal upgrade handler should close the associated WebConnection on destroy. --- .../tomcat/websocket/server/WsHttpUpgradeHandler.java | 3 +++ webapps/docs/changelog.xml | 8 ++++++++ 2 files changed, 11 insertions(+) diff --git a/java/org/apache/tomcat/websocket/server/WsHttpUpgradeHandler.java b/java/org/apache/tomcat/websocket/server/WsHttpUpgradeHandler.java index 1d29a7dc414f..ef39f7413693 100644 --- a/java/org/apache/tomcat/websocket/server/WsHttpUpgradeHandler.java +++ b/java/org/apache/tomcat/websocket/server/WsHttpUpgradeHandler.java @@ -100,6 +100,7 @@ public void preInit(ServerEndpointConfig serverEndpointConfig, @Override public void init(WebConnection connection) { + this.connection = connection; if (serverEndpointConfig == null) { throw new IllegalStateException( sm.getString("wsHttpUpgradeHandler.noPreInit")); @@ -212,7 +213,9 @@ public void pause() { @Override public void destroy() { + WebConnection connection = this.connection; if (connection != null) { + this.connection = null; try { connection.close(); } catch (Exception e) { diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml index 0bfea6d24771..8af1114d565f 100644 --- a/webapps/docs/changelog.xml +++ b/webapps/docs/changelog.xml @@ -198,6 +198,14 @@ + + + + The internal upgrade handler should close the associated + WebConnection on destroy. (remm) + + +