diff options
author | ZyX <kp-pav@yandex.ru> | 2016-01-30 22:25:21 +0300 |
---|---|---|
committer | ZyX <kp-pav@yandex.ru> | 2016-04-18 02:44:03 +0300 |
commit | 68e58444b48fc34c9a7c262883750778fbd935d7 (patch) | |
tree | e70c3cbc8ae375c34498c30620571b1deb5e3099 /src/nvim/garray.c | |
parent | c3efad5398da01fcdb0fd40822bedff4957c7797 (diff) | |
download | rneovim-68e58444b48fc34c9a7c262883750778fbd935d7.tar.gz rneovim-68e58444b48fc34c9a7c262883750778fbd935d7.tar.bz2 rneovim-68e58444b48fc34c9a7c262883750778fbd935d7.zip |
eval: Add jsonencode() function
Ref #3471
Diffstat (limited to 'src/nvim/garray.c')
-rw-r--r-- | src/nvim/garray.c | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/nvim/garray.c b/src/nvim/garray.c index e6cbd9332b..47a370b18c 100644 --- a/src/nvim/garray.c +++ b/src/nvim/garray.c @@ -188,11 +188,22 @@ void ga_concat(garray_T *gap, const char_u *restrict s) return; } - int len = (int)strlen((char *) s); + ga_concat_len(gap, (const char *restrict) s, strlen((char *) s)); +} + +/// Concatenate a string to a growarray which contains characters +/// +/// @param[out] gap Growarray to modify. +/// @param[in] s String to concatenate. +/// @param[in] len String length. +void ga_concat_len(garray_T *const gap, const char *restrict s, + const size_t len) + FUNC_ATTR_NONNULL_ALL +{ if (len) { - ga_grow(gap, len); + ga_grow(gap, (int) len); char *data = gap->ga_data; - memcpy(data + gap->ga_len, s, (size_t)len); + memcpy(data + gap->ga_len, s, len); gap->ga_len += len; } } |