mirror of
https://github.com/fish-shell/fish-shell
synced 2025-01-13 05:28:49 +00:00
Correctly detect unbalanced 'end' in syntax highlighting
This commit is contained in:
parent
920adb8296
commit
2a1fd421bd
2 changed files with 8 additions and 2 deletions
|
@ -2263,9 +2263,15 @@ static void test_highlighting(void)
|
|||
{L"param2", HIGHLIGHT_PARAM},
|
||||
{NULL, -1}
|
||||
};
|
||||
|
||||
const highlight_component_t components9[] =
|
||||
{
|
||||
{L"end", HIGHLIGHT_ERROR},
|
||||
{NULL, -1}
|
||||
};
|
||||
|
||||
|
||||
const highlight_component_t *tests[] = {components1, components2, components3, components4, components5, components6, components7, components8};
|
||||
const highlight_component_t *tests[] = {components1, components2, components3, components4, components5, components6, components7, components8, components9};
|
||||
for (size_t which = 0; which < sizeof tests / sizeof *tests; which++)
|
||||
{
|
||||
const highlight_component_t *components = tests[which];
|
||||
|
|
|
@ -862,7 +862,7 @@ bool parse_t::parse_internal(const wcstring &str, parse_tree_flags_t parse_flags
|
|||
if (parse_flags & parse_flag_continue_after_error)
|
||||
{
|
||||
/* Mark a special error token, and then keep going */
|
||||
const parse_token_t token = {parse_special_type_parse_error, parse_keyword_none, -1, -1};
|
||||
const parse_token_t token = {parse_special_type_parse_error, parse_keyword_none, false, queue[0].source_start, queue[0].source_length};
|
||||
this->parser->accept_tokens(token, kInvalidToken);
|
||||
this->parser->reset_symbols();
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue