diff options
author | zeertzjq <zeertzjq@outlook.com> | 2024-05-12 05:39:33 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-05-12 05:39:33 +0800 |
commit | 4e5c633ed4871a948aff7338b793ac5f93484153 (patch) | |
tree | 744f6ad0ea34f49e17a5ffae6ae3e335de86559d /src/nvim/api | |
parent | c1396afa7c41c2009d06a54c8aaf1ca5689a9786 (diff) | |
download | rneovim-4e5c633ed4871a948aff7338b793ac5f93484153.tar.gz rneovim-4e5c633ed4871a948aff7338b793ac5f93484153.tar.bz2 rneovim-4e5c633ed4871a948aff7338b793ac5f93484153.zip |
fix(api): make getting explicit empty hl in virtual text work (#28697)
Diffstat (limited to 'src/nvim/api')
-rw-r--r-- | src/nvim/api/extmark.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/nvim/api/extmark.c b/src/nvim/api/extmark.c index 320e14b654..f7c3788dad 100644 --- a/src/nvim/api/extmark.c +++ b/src/nvim/api/extmark.c @@ -121,7 +121,7 @@ Array virt_text_to_array(VirtText vt, bool hl_name, Arena *arena) Array hl_array = arena_array(arena, i < j ? j - i + 1 : 0); for (; i < j; i++) { int hl_id = kv_A(vt, i).hl_id; - if (hl_id > 0) { + if (hl_id >= 0) { ADD_C(hl_array, hl_group_name(hl_id, hl_name)); } } @@ -131,11 +131,11 @@ Array virt_text_to_array(VirtText vt, bool hl_name, Arena *arena) Array chunk = arena_array(arena, 2); ADD_C(chunk, CSTR_AS_OBJ(text)); if (hl_array.size > 0) { - if (hl_id > 0) { + if (hl_id >= 0) { ADD_C(hl_array, hl_group_name(hl_id, hl_name)); } ADD_C(chunk, ARRAY_OBJ(hl_array)); - } else if (hl_id > 0) { + } else if (hl_id >= 0) { ADD_C(chunk, hl_group_name(hl_id, hl_name)); } ADD_C(chunks, ARRAY_OBJ(chunk)); @@ -1165,7 +1165,7 @@ VirtText parse_virt_text(Array chunks, Error *err, int *width) String str = chunk.items[0].data.string; - int hl_id = 0; + int hl_id = -1; if (chunk.size == 2) { Object hl = chunk.items[1]; if (hl.type == kObjectTypeArray) { |