]> git.cameronkatri.com Git - cgit.git/blobdiff - parsing.c
ui-ssdiff: ban strncpy()
[cgit.git] / parsing.c
index 12453c2db289e1c7812de2cbcdbe128275930f92..9e73e70c3cf909125f7444c7d7f96ea6c87466eb 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;
 }
 
@@ -78,7 +77,7 @@ static void parse_user(const char *t, char **name, char **email, unsigned long *
 
                email_len = ident.mail_end - ident.mail_begin;
                *email = xmalloc(strlen("<") + email_len + strlen(">") + 1);
-               sprintf(*email, "<%.*s>", email_len, ident.mail_begin);
+               xsnprintf(*email, email_len + 3, "<%.*s>", email_len, ident.mail_begin);
 
                if (ident.date_begin)
                        *date = strtoul(ident.date_begin, NULL, 10);