# HG changeset patch # User redestad # Date 1488387436 -3600 # Wed Mar 01 17:57:16 2017 +0100 # Node ID 0d6ca1e5ee7164384ca214c1e594d68d4613af74 # Parent b6aa2d618da40be59846beec8efeee2e10e7923d 8176041: Optimize handling of comment lines in Properties$LineReader.readLine Reviewed-by: shade diff --git a/src/java.base/share/classes/java/util/Properties.java b/src/java.base/share/classes/java/util/Properties.java --- a/src/java.base/share/classes/java/util/Properties.java +++ b/src/java.base/share/classes/java/util/Properties.java @@ -494,8 +494,25 @@ if (isNewLine) { isNewLine = false; if (c == '#' || c == '!') { + // Comment, quickly consume the rest of the line, + // resume on line-break and backslash. + if (inStream != null) { + while (inOff < inLimit) { + byte b = inByteBuf[inOff++]; + if (b == '\n' || b == '\r' || b == '\\') { + c = (char)(0xff & b); + break; + } + } + } else { + while (inOff < inLimit) { + c = inCharBuf[inOff++]; + if (c == '\n' || c == '\r' || c == '\\') { + break; + } + } + } isCommentLine = true; - continue; } }