--- old/core/org.openjdk.jmc.flightrecorder/src/main/java/org/openjdk/jmc/flightrecorder/util/ChunkReader.java 2018-07-20 14:10:30.531744000 +0530 +++ new/core/org.openjdk.jmc.flightrecorder/src/main/java/org/openjdk/jmc/flightrecorder/util/ChunkReader.java 2018-07-20 14:10:30.407744000 +0530 @@ -199,12 +199,22 @@ @Override public boolean hasNext() { + boolean hasNext = false; if (streamState == StreamState.NEXT_CHUNK) { - return validateJFRMagic(); + hasNext = validateJFRMagic(); } else if (streamState == StreamState.JFR_CHECKED) { - return true; + hasNext = true; } - return false; + if (!hasNext) { + if (inputStream != null) { + try { + inputStream.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + return hasNext; } private boolean validateJFRMagic() {