aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/option.c
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2024-11-22 06:52:32 +0800
committerGitHub <noreply@github.com>2024-11-22 06:52:32 +0800
commitff75f345ab5fa57c6560db021e8eb099aff90472 (patch)
tree231593b41f0e203427f6f76f1776e399719b90cc /src/nvim/option.c
parent92a83f671b227ace7ded5006619bb943c2d9ecc0 (diff)
downloadrneovim-ff75f345ab5fa57c6560db021e8eb099aff90472.tar.gz
rneovim-ff75f345ab5fa57c6560db021e8eb099aff90472.tar.bz2
rneovim-ff75f345ab5fa57c6560db021e8eb099aff90472.zip
fix(highlight): 'winhl' shouldn't take priority over API (#31288)
Diffstat (limited to 'src/nvim/option.c')
-rw-r--r--src/nvim/option.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/nvim/option.c b/src/nvim/option.c
index 1cfe4cd08b..d3cbe9f056 100644
--- a/src/nvim/option.c
+++ b/src/nvim/option.c
@@ -1736,8 +1736,14 @@ bool parse_winhl_opt(const char *winhl, win_T *wp)
p = wp->w_p_winhl;
}
+ if (wp != NULL && wp->w_ns_hl_winhl < 0) {
+ // 'winhighlight' shouldn't be used for this window.
+ // Only check that the value is valid.
+ wp = NULL;
+ }
+
if (!*p) {
- if (wp != NULL && wp->w_ns_hl_winhl && wp->w_ns_hl == wp->w_ns_hl_winhl) {
+ if (wp != NULL && wp->w_ns_hl_winhl > 0 && wp->w_ns_hl == wp->w_ns_hl_winhl) {
wp->w_ns_hl = 0;
wp->w_hl_needs_update = true;
}