]> git.kaiwu.me - njs.git/commitdiff
Fixed UTF-8 character escaping.
authorAlexander Borisov <alexander.borisov@nginx.com>
Wed, 10 Jul 2019 18:54:33 +0000 (21:54 +0300)
committerAlexander Borisov <alexander.borisov@nginx.com>
Wed, 10 Jul 2019 18:54:33 +0000 (21:54 +0300)
njs/njs_parser_terminal.c
njs/test/njs_unit_test.c

index 89474d36300087550d1887df85d2e05927712433..85510fefb94f3724fc17c1e7be1e2259e85f304b 100644 (file)
@@ -1047,7 +1047,6 @@ njs_parser_escape_string_create(njs_vm_t *vm, njs_parser_t *parser,
 
             default:
                 if (c >= 0x80) {
-                    src--;
                     goto utf8_copy;
                 }
 
index c0a4f22a1cdf1fc5933d9dd5a40578e64bb04907..32bf7c4013050f232c981baf963b31562298030f 100644 (file)
@@ -4537,6 +4537,12 @@ static njs_unit_test_t  njs_test[] =
     { nxt_string("'\\u{D800}\\u{'"),
       nxt_string("SyntaxError: Invalid Unicode code point \"\\u{D800}\\u{\" in 1") },
 
+    { nxt_string("'α' !== '\\α'"),
+      nxt_string("false") },
+
+    { nxt_string("'r' !== '\\r'"),
+      nxt_string("true") },
+
     /* Broken UTF-8 literals.*/
 
     { nxt_string("'\\a\x96\xE5\x9C\xE3\x81\xB6'"),