aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools
diff options
context:
space:
mode:
authorGravatar laurentlb <laurentlb@google.com>2017-06-26 17:28:28 +0200
committerGravatar Marcel Hlopko <hlopko@google.com>2017-06-26 18:43:43 +0200
commit3759d00356e7bf1dcf42e34cb83ad7bf3153a9c2 (patch)
treea7e0769e2ab92616914a0881f3c238f26da2a170 /src/main/java/com/google/devtools
parenta7be6f6df4d3cc5f0f8107b8ffc15f0496e001c6 (diff)
Forbid octal sequences greater than \377 (0xff) in strings.
RELNOTES[INC]: In strings, octal sequences greater than \377 are now forbidden (e.g. "\\600"). Previously, Blaze had the same behavior as Python 2, where "\\450" == "\050". PiperOrigin-RevId: 160147169
Diffstat (limited to 'src/main/java/com/google/devtools')
-rw-r--r--src/main/java/com/google/devtools/build/lib/syntax/Lexer.java3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/Lexer.java b/src/main/java/com/google/devtools/build/lib/syntax/Lexer.java
index 5f557b21fb..15283f8a71 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/Lexer.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/Lexer.java
@@ -400,6 +400,9 @@ public final class Lexer {
}
}
}
+ if (octal > 0xff) {
+ error("octal escape sequence out of range (maximum is \\377)");
+ }
literal.append((char) (octal & 0xff));
break;
}