aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/memory.c
diff options
context:
space:
mode:
authorThiago de Arruda <tpadilha84@gmail.com>2014-05-26 13:09:42 -0300
committerThiago de Arruda <tpadilha84@gmail.com>2014-05-26 13:09:42 -0300
commitfc7bc0412ee111cdea61c89f3ec2461601013fa2 (patch)
treea7efb9c21c1903b5e79e18186d0172afb06eb40e /src/nvim/memory.c
parent3a68a4861adcc950cdbde709d4841f8ea0c52b12 (diff)
parent014febef22a279b9a457aa2830caeec1d9917461 (diff)
downloadrneovim-fc7bc0412ee111cdea61c89f3ec2461601013fa2.tar.gz
rneovim-fc7bc0412ee111cdea61c89f3ec2461601013fa2.tar.bz2
rneovim-fc7bc0412ee111cdea61c89f3ec2461601013fa2.zip
Merge pull request #761 'fix a few strncpy calls by using xstrlcpy'
Diffstat (limited to 'src/nvim/memory.c')
-rw-r--r--src/nvim/memory.c13
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);