aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/nvim/buffer_defs.h4
-rw-r--r--src/nvim/change.c5
2 files changed, 5 insertions, 4 deletions
diff --git a/src/nvim/buffer_defs.h b/src/nvim/buffer_defs.h
index 95cee3c442..87d548bfab 100644
--- a/src/nvim/buffer_defs.h
+++ b/src/nvim/buffer_defs.h
@@ -810,8 +810,8 @@ struct tabpage_S {
typedef struct {
linenr_T wl_lnum; // buffer line number for logical line
uint16_t wl_size; // height in screen lines
- char wl_valid; // true values are valid for text in buffer
- char wl_folded; // true when this is a range of folded lines
+ bool wl_valid; // true values are valid for text in buffer
+ bool wl_folded; // true when this is a range of folded lines
linenr_T wl_foldend; // last buffer line number for folded line
linenr_T wl_lastlnum; // last buffer line number for logical line
} wline_T;
diff --git a/src/nvim/change.c b/src/nvim/change.c
index acdf131ddb..28854ae8aa 100644
--- a/src/nvim/change.c
+++ b/src/nvim/change.c
@@ -208,8 +208,9 @@ static void changed_lines_invalidate_win(win_T *wp, linenr_T lnum, colnr_T col,
wp->w_lines[i].wl_foldend += xtra;
wp->w_lines[i].wl_lastlnum += xtra;
}
- } else if (wp->w_lines[i].wl_foldend >= lnum) {
- // change somewhere inside this range of folded lines,
+ } else if (wp->w_lines[i].wl_foldend >= lnum
+ || wp->w_lines[i].wl_lastlnum >= lnum) {
+ // change somewhere inside this range of folded or concealed lines,
// may need to be redrawn
wp->w_lines[i].wl_valid = false;
}