diff options
Diffstat (limited to 'src/nvim/memory.c')
-rw-r--r-- | src/nvim/memory.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/nvim/memory.c b/src/nvim/memory.c index b6990890a6..238a6791c0 100644 --- a/src/nvim/memory.c +++ b/src/nvim/memory.c @@ -183,6 +183,19 @@ char *xstpncpy(char *restrict dst, const char *restrict src, size_t maxlen) } } +size_t xstrlcpy(char *restrict dst, const char *restrict src, size_t size) +{ + size_t ret = strlen(src); + + if (size) { + size_t len = (ret >= size) ? size - 1 : ret; + memcpy(dst, src, len); + dst[len] = '\0'; + } + + return ret; +} + char *xstrdup(const char *str) { char *ret = strdup(str); |