]> gitweb.ps.run Git - ps-cgit/blobdiff - parsing.c
parsing: ban strncpy()
[ps-cgit] / parsing.c
index fd1ea9967cb68adc13f2efb555815a2e5da63812..e224564dc5346e74300ca35b567a6799f701ca57 100644 (file)
--- a/parsing.c
+++ b/parsing.c
@@ -63,8 +63,7 @@ static char *substr(const char *head, const char *tail)
        if (tail < head)
                return xstrdup("");
        buf = xmalloc(tail - head + 1);
-       strncpy(buf, head, tail - head);
-       buf[tail - head] = '\0';
+       strlcpy(buf, head, tail - head + 1);
        return buf;
 }
 
@@ -200,7 +199,7 @@ struct taginfo *cgit_parse_tag(struct tag *tag)
        const char *p;
        struct taginfo *ret = NULL;
 
-       data = read_sha1_file(tag->object.oid.hash, &type, &size);
+       data = read_object_file(&tag->object.oid, &type, &size);
        if (!data || type != OBJ_TAG)
                goto cleanup;