HADOOP-10615. FileInputStream in JenkinsHash#main() is never closed. Contributed by Chen He.

(cherry picked from commit 111e6a3fdf)
This commit is contained in:
Tsuyoshi Ozawa 2015-07-16 14:08:31 +09:00
parent dc211ca658
commit f3f7872fbf
2 changed files with 11 additions and 7 deletions

View File

@ -475,6 +475,9 @@ Release 2.8.0 - UNRELEASED
HADOOP-12200. TestCryptoStreamsWithOpensslAesCtrCryptoCodec should be
skipped in non-native profile. (Masatake Iwasaki via aajisaka)
HADOOP-10615. FileInputStream in JenkinsHash#main() is never closed.
(Chen He via ozawa)
Release 2.7.2 - UNRELEASED
INCOMPATIBLE CHANGES

View File

@ -252,13 +252,14 @@ public class JenkinsHash extends Hash {
System.err.println("Usage: JenkinsHash filename");
System.exit(-1);
}
FileInputStream in = new FileInputStream(args[0]);
byte[] bytes = new byte[512];
int value = 0;
JenkinsHash hash = new JenkinsHash();
for (int length = in.read(bytes); length > 0 ; length = in.read(bytes)) {
value = hash.hash(bytes, length, value);
try (FileInputStream in = new FileInputStream(args[0])) {
byte[] bytes = new byte[512];
int value = 0;
JenkinsHash hash = new JenkinsHash();
for (int length = in.read(bytes); length > 0; length = in.read(bytes)) {
value = hash.hash(bytes, length, value);
}
System.out.println(Math.abs(value));
}
System.out.println(Math.abs(value));
}
}