From c430e6a33360016f7aea3b7afd136069e435d52d Mon Sep 17 00:00:00 2001 From: Michael Jumper Date: Sat, 20 Feb 2016 19:24:00 -0800 Subject: [PATCH] GUAC-1378: Ensure HTML patch resources are closed after reading. --- .../basic/rest/patch/PatchRESTService.java | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/rest/patch/PatchRESTService.java b/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/rest/patch/PatchRESTService.java index f0de9b604..028c34ac6 100644 --- a/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/rest/patch/PatchRESTService.java +++ b/guacamole/src/main/java/org/glyptodon/guacamole/net/basic/rest/patch/PatchRESTService.java @@ -70,13 +70,22 @@ public class PatchRESTService { StringBuilder contents = new StringBuilder(); - char buffer[] = new char[8192]; - int length; - // Read entire resource into StringBuilder one chunk at a time Reader reader = new InputStreamReader(resource.asStream(), "UTF-8"); - while ((length = reader.read(buffer)) != -1) { - contents.append(buffer, 0, length); + try { + + char buffer[] = new char[8192]; + int length; + + while ((length = reader.read(buffer)) != -1) { + contents.append(buffer, 0, length); + } + + } + + // Ensure resource is always closed + finally { + reader.close(); } return contents.toString();