Ensure Reader is closed in ShellDocumentationProvider.
Change-Id: I663f473ff500b85b803bb2a07433361fd1a589f8
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
diff --git a/plugins/org.eclipse.dltk.sh.ui/src/org/eclipse/dltk/sh/internal/ui/selection/ShellDocumentationProvider.java b/plugins/org.eclipse.dltk.sh.ui/src/org/eclipse/dltk/sh/internal/ui/selection/ShellDocumentationProvider.java
index 9f9646a..239300e 100644
--- a/plugins/org.eclipse.dltk.sh.ui/src/org/eclipse/dltk/sh/internal/ui/selection/ShellDocumentationProvider.java
+++ b/plugins/org.eclipse.dltk.sh.ui/src/org/eclipse/dltk/sh/internal/ui/selection/ShellDocumentationProvider.java
@@ -46,13 +46,14 @@
final StringBuilder out = new StringBuilder();
try (InputStream stream = process.start().getInputStream()) {
final char[] buffer = new char[1024];
- Reader in = new InputStreamReader(stream);
- for (;;) {
- int rsz = in.read(buffer, 0, buffer.length);
- if (rsz < 0) {
- break;
+ try (Reader in = new InputStreamReader(stream)) {
+ for (;;) {
+ int rsz = in.read(buffer, 0, buffer.length);
+ if (rsz < 0) {
+ break;
+ }
+ out.append(buffer, 0, rsz);
}
- out.append(buffer, 0, rsz);
}
} catch (IOException e) {
e.printStackTrace();