diff --git a/src/main/java/com/caoccao/javet/sanitizer/matchers/JavetSanitizerBuiltInObjectMatcher.java b/src/main/java/com/caoccao/javet/sanitizer/matchers/JavetSanitizerBuiltInObjectMatcher.java index e44e9790..7dd76e37 100644 --- a/src/main/java/com/caoccao/javet/sanitizer/matchers/JavetSanitizerBuiltInObjectMatcher.java +++ b/src/main/java/com/caoccao/javet/sanitizer/matchers/JavetSanitizerBuiltInObjectMatcher.java @@ -88,8 +88,8 @@ public ISwc4jAst matches(JavetSanitizerOptions options, ISwc4jAst node) { if (!options.getReservedFunctionIdentifierSet().contains(identifier)) { return node; } - } else if (options.getReservedIdentifierSet().contains(identifier)) { - break; + } else if (!options.getReservedIdentifierSet().contains(identifier)) { + return node; } else if (!options.getReservedMutableIdentifierSet().contains(identifier)) { return node; } diff --git a/src/test/java/com/caoccao/javet/sanitizer/checkers/TestJavetSanitizerModuleChecker.java b/src/test/java/com/caoccao/javet/sanitizer/checkers/TestJavetSanitizerModuleChecker.java index 324bcac2..b12c1717 100644 --- a/src/test/java/com/caoccao/javet/sanitizer/checkers/TestJavetSanitizerModuleChecker.java +++ b/src/test/java/com/caoccao/javet/sanitizer/checkers/TestJavetSanitizerModuleChecker.java @@ -125,14 +125,32 @@ public void testReservedIdentifiers() { options.getReservedIdentifierSet().add("$a"); checker.setOptions(options.seal()); assertException( - "const $a = 1; const $b = 1;", + "$a; const $b = 1;", JavetSanitizerError.IdentifierNotAllowed, "Identifier $b is not allowed.\n" + "Source: $b\n" + "Line: 1\n" + - "Column: 21\n" + - "Start: 20\n" + - "End: 22"); + "Column: 11\n" + + "Start: 10\n" + + "End: 12"); + assertException( + "$b;", + JavetSanitizerError.IdentifierNotAllowed, + "Identifier $b is not allowed.\n" + + "Source: $b\n" + + "Line: 1\n" + + "Column: 1\n" + + "Start: 0\n" + + "End: 2"); + assertException( + "const $a = 1;", + JavetSanitizerError.IdentifierNotAllowed, + "Identifier $a is not allowed.\n" + + "Source: $a\n" + + "Line: 1\n" + + "Column: 7\n" + + "Start: 6\n" + + "End: 8"); } @Test