From 5db28b92fbf227dcd17949ba93342fb2cdd2feca Mon Sep 17 00:00:00 2001 From: Alexander Borisov Date: Wed, 10 Jul 2019 21:54:33 +0300 Subject: [PATCH] Fixed UTF-8 character escaping. --- njs/njs_parser_terminal.c | 1 - njs/test/njs_unit_test.c | 6 ++++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/njs/njs_parser_terminal.c b/njs/njs_parser_terminal.c index 89474d36..85510fef 100644 --- a/njs/njs_parser_terminal.c +++ b/njs/njs_parser_terminal.c @@ -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; } diff --git a/njs/test/njs_unit_test.c b/njs/test/njs_unit_test.c index c0a4f22a..32bf7c40 100644 --- a/njs/test/njs_unit_test.c +++ b/njs/test/njs_unit_test.c @@ -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'"), -- 2.47.3