From d6f20f3610af0648b00a3200a32e24b17c04d763 Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Thu, 5 Jun 2014 08:43:17 -0700 Subject: * parser.l: Adding an explicit lexical rule to catch backslashes occurring within a regex, not followed by a character. This can happen in dynamically parsed regexes such as "abc\\". --- ChangeLog | 7 +++++++ parser.l | 5 +++++ 2 files changed, 12 insertions(+) diff --git a/ChangeLog b/ChangeLog index b3ecc3a1..9cbb1bb3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2014-06-05 Kaz Kylheku + + * parser.l: Adding an explicit lexical rule to + catch backslashes occurring within a regex, not followed by a + character. This can happen in dynamically parsed regexes + such as "abc\\". + 2014-06-05 Kaz Kylheku * parser.l (yylex_destroy): Only rely on the FLEX_ version diff --git a/parser.l b/parser.l index a49e43d5..fa3c88cb 100644 --- a/parser.l +++ b/parser.l @@ -751,6 +751,11 @@ UONLY {U2}{U}|{U3}{U}{U}|{U4}{U}{U}{U} return REGCHAR; } +[\\] { + yyerrprepf(lit("dangling backslash in regex"), nao); + return ERRTOK; +} + {UANYN} { wchar_t buf[8]; utf8_from(buf, yytext); -- cgit v1.2.3