diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/command_manager.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/command_manager.cc b/src/command_manager.cc index ac6ef56a..8d400a64 100644 --- a/src/command_manager.cc +++ b/src/command_manager.cc @@ -168,6 +168,7 @@ void skip_blanks_and_comments(Reader& reader) Token parse_percent_token(Reader& reader, bool throw_on_unterminated) { + kak_assert(*reader == '%'); ++reader; const auto type_start = reader.pos; while (reader and iswalpha(*reader)) @@ -340,7 +341,9 @@ String expand_impl(StringView str, const Context& context, Codepoint c = *reader; if (c == '\\') { - c = *++reader; + if (not (++reader)) + throw parse_error{"unterminated escape"}; + c = *reader; if (c == '%' or c == '\\') { res += reader.substr_from(beg); |
