aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/lib/kvec.h
diff options
context:
space:
mode:
authorBjörn Linse <bjorn.linse@gmail.com>2018-07-06 14:39:50 +0200
committerBjörn Linse <bjorn.linse@gmail.com>2018-07-21 13:21:58 +0200
commit1adb01c120d04bdbf25cd4ea6151ecd5f2de3a72 (patch)
tree1f906f5f77b77bc0beecb33320ceb4c15ff5c58e /src/nvim/lib/kvec.h
parent2134396074d86c344aaf43c3b839fd38c499fb69 (diff)
downloadrneovim-1adb01c120d04bdbf25cd4ea6151ecd5f2de3a72.tar.gz
rneovim-1adb01c120d04bdbf25cd4ea6151ecd5f2de3a72.tar.bz2
rneovim-1adb01c120d04bdbf25cd4ea6151ecd5f2de3a72.zip
ui: use line-based rather than char-based updates in screen.c
Add ext_newgrid and ext_hlstate extensions. These use predefined highlights and line-segment based updates, for efficiency and simplicity.. The ext_hlstate extension in addition allows semantic identification of builtin and syntax highlights. Reimplement the old char-based updates in the remote UI layer, for compatibility. For the moment, this is still the default. The bulitin TUI uses the new line-based protocol. cmdline uses curwin cursor position when ext_cmdline is active.
Diffstat (limited to 'src/nvim/lib/kvec.h')
-rw-r--r--src/nvim/lib/kvec.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/nvim/lib/kvec.h b/src/nvim/lib/kvec.h
index 6d54c7f78d..93b2f053bc 100644
--- a/src/nvim/lib/kvec.h
+++ b/src/nvim/lib/kvec.h
@@ -98,14 +98,14 @@
(*kv_pushp(v) = (x))
#define kv_a(v, i) \
- (((v).capacity <= (size_t) (i) \
+ (*(((v).capacity <= (size_t) (i) \
? ((v).capacity = (v).size = (i) + 1, \
kv_roundup32((v).capacity), \
- kv_resize((v), (v).capacity), 0) \
+ kv_resize((v), (v).capacity), 0UL) \
: ((v).size <= (size_t) (i) \
? (v).size = (i) + 1 \
- : 0)), \
- (v).items[(i)])
+ : 0UL)), \
+ &(v).items[(i)]))
/// Type of a vector with a few first members allocated on stack
///