Make webserver resource-closing more watertight against potential leaks

This commit is contained in:
Lukas Rieger (Blue) 2023-09-05 14:22:30 +02:00
parent 155f56e62a
commit 7156993323
No known key found for this signature in database
GPG Key ID: 2D09EC5ED2687FF2
1 changed files with 20 additions and 1 deletions

View File

@ -120,7 +120,26 @@ public class HttpConnection implements SelectionConsumer {
private void handleIOException(Channel channel, IOException e) {
request.clear();
response = null;
if (response != null) {
try {
response.close();
} catch (IOException e2) {
Logger.global.logWarning("Failed to close response: " + e2);
}
response = null;
}
if (futureResponse != null) {
futureResponse.thenAccept(response -> {
try {
response.close();
} catch (IOException e2) {
Logger.global.logWarning("Failed to close response: " + e2);
}
});
futureResponse = null;
}
Logger.global.logDebug("Failed to process selection: " + e);
try {