diff options
| author | Maxime Coste <mawww@kakoune.org> | 2017-06-07 13:09:45 +0100 |
|---|---|---|
| committer | Maxime Coste <mawww@kakoune.org> | 2017-06-07 13:09:45 +0100 |
| commit | a0d848da8d70933f39119415647552c88e3beaf4 (patch) | |
| tree | 4880f7e1a0d013ebf8270c7ad077e351c7b96344 /src/command_manager.cc | |
| parent | 81118552c882082413486416b517ba2275c40405 (diff) | |
Do not allow whitespaces as % string delimiters
Diffstat (limited to 'src/command_manager.cc')
| -rw-r--r-- | src/command_manager.cc | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/command_manager.cc b/src/command_manager.cc index fa7a5044..fc615078 100644 --- a/src/command_manager.cc +++ b/src/command_manager.cc @@ -210,11 +210,13 @@ Token parse_percent_token(Reader& reader) ++reader; StringView type_name = reader.substr_from(type_start); - if (throw_on_unterminated and not reader) - throw parse_error{format("expected a string delimiter after '%{}'", - type_name)}; - else if (not reader) + if (not reader or is_blank(*reader)) + { + if (throw_on_unterminated) + throw parse_error{format("expected a string delimiter after '%{}'", + type_name)}; return {}; + } Token::Type type = token_type<throw_on_unterminated>(type_name); |
