diff options
Diffstat (limited to 'src/nvim/garray.c')
-rw-r--r-- | src/nvim/garray.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/nvim/garray.c b/src/nvim/garray.c index 28339c3059..f87a196361 100644 --- a/src/nvim/garray.c +++ b/src/nvim/garray.c @@ -217,3 +217,12 @@ void ga_append(garray_T *gap, uint8_t c) { GA_APPEND(uint8_t, gap, c); } + +void *ga_append_via_ptr(garray_T *gap, size_t item_size) +{ + if ((int)item_size != gap->ga_itemsize) { + WLOG("wrong item size (%zu), should be %d", item_size, gap->ga_itemsize); + } + ga_grow(gap, 1); + return ((char *)gap->ga_data) + (item_size * (size_t)gap->ga_len++); +} |