--- a/mercurial/osutil.c
+++ b/mercurial/osutil.c
@@ -197,7 +197,7 @@ static PyObject *statfiles(PyObject *lis
if (kind != -1 && !keep)
continue;
- strncat(path + len + 1, name, PATH_MAX - len);
+ strncpy(path + len + 1, name, PATH_MAX - len);
path[PATH_MAX] = 0;
if (keep) {