diff options
author | bfredl <bjorn.linse@gmail.com> | 2022-08-21 21:11:56 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-08-21 21:11:56 +0200 |
commit | c086bf60794811ef33480e87000630e2d498b1bd (patch) | |
tree | c51746e1b9919c0653602c18df0118081c87bf43 | |
parent | 2379699b1e7cd944ad3d8169d9c9d4072d0fb771 (diff) | |
parent | 5e1545204394996aa43be214bec688a4cfbaa78e (diff) | |
download | rneovim-c086bf60794811ef33480e87000630e2d498b1bd.tar.gz rneovim-c086bf60794811ef33480e87000630e2d498b1bd.tar.bz2 rneovim-c086bf60794811ef33480e87000630e2d498b1bd.zip |
Merge pull request #19864 from lewis6991/decorfix
fix(ui): don't allow decor provider with ns_id==0
-rw-r--r-- | src/nvim/decoration_provider.c | 1 | ||||
-rw-r--r-- | src/nvim/highlight.c | 5 |
2 files changed, 6 insertions, 0 deletions
diff --git a/src/nvim/decoration_provider.c b/src/nvim/decoration_provider.c index 95e13b4240..14c1238fa4 100644 --- a/src/nvim/decoration_provider.c +++ b/src/nvim/decoration_provider.c @@ -174,6 +174,7 @@ void decor_providers_invoke_end(DecorProviders *providers, char **err) DecorProvider *get_decor_provider(NS ns_id, bool force) { + assert(ns_id > 0); size_t i; size_t len = kv_size(decor_providers); for (i = 0; i < len; i++) { diff --git a/src/nvim/highlight.c b/src/nvim/highlight.c index c26b00df79..d6a18fcf8e 100644 --- a/src/nvim/highlight.c +++ b/src/nvim/highlight.c @@ -174,6 +174,11 @@ int ns_get_hl(NS *ns_hl, int hl_id, bool link, bool nodefault) { static int recursive = 0; + if (*ns_hl == 0) { + // ns=0 (the default namespace) does not have a provider so stop here + return -1; + } + if (*ns_hl < 0) { if (ns_hl_active <= 0) { return -1; |