]> granicus.if.org Git - cgit/commitdiff
Replace most uses of strncmp() with prefixcmp()
authorLukas Fleischer <cgit@cryptocrack.de>
Fri, 10 Jan 2014 11:44:35 +0000 (12:44 +0100)
committerJason A. Donenfeld <Jason@zx2c4.com>
Fri, 10 Jan 2014 16:01:29 +0000 (17:01 +0100)
This is a preparation for replacing all prefix checks with either
strip_prefix() or starts_with() when Git 1.8.6 is released.

Signed-off-by: Lukas Fleischer <cgit@cryptocrack.de>
cgit.c
parsing.c
scan-tree.c
ui-refs.c
ui-shared.c
ui-summary.c

diff --git a/cgit.c b/cgit.c
index 1f84da86a03bb483f36a75af0612dff557c7f003..e31962d43bc919c14e08f4ddbd4ff5e8cfc7a4b4 100644 (file)
--- a/cgit.c
+++ b/cgit.c
@@ -863,7 +863,7 @@ static void cgit_parse_args(int argc, const char **argv)
        int scan = 0;
 
        for (i = 1; i < argc; i++) {
-               if (!strncmp(argv[i], "--cache=", 8)) {
+               if (!prefixcmp(argv[i], "--cache=")) {
                        ctx.cfg.cache_root = xstrdup(argv[i] + 8);
                }
                if (!strcmp(argv[i], "--nocache")) {
@@ -872,28 +872,28 @@ static void cgit_parse_args(int argc, const char **argv)
                if (!strcmp(argv[i], "--nohttp")) {
                        ctx.env.no_http = "1";
                }
-               if (!strncmp(argv[i], "--query=", 8)) {
+               if (!prefixcmp(argv[i], "--query=")) {
                        ctx.qry.raw = xstrdup(argv[i] + 8);
                }
-               if (!strncmp(argv[i], "--repo=", 7)) {
+               if (!prefixcmp(argv[i], "--repo=")) {
                        ctx.qry.repo = xstrdup(argv[i] + 7);
                }
-               if (!strncmp(argv[i], "--page=", 7)) {
+               if (!prefixcmp(argv[i], "--page=")) {
                        ctx.qry.page = xstrdup(argv[i] + 7);
                }
-               if (!strncmp(argv[i], "--head=", 7)) {
+               if (!prefixcmp(argv[i], "--head=")) {
                        ctx.qry.head = xstrdup(argv[i] + 7);
                        ctx.qry.has_symref = 1;
                }
-               if (!strncmp(argv[i], "--sha1=", 7)) {
+               if (!prefixcmp(argv[i], "--sha1=")) {
                        ctx.qry.sha1 = xstrdup(argv[i] + 7);
                        ctx.qry.has_sha1 = 1;
                }
-               if (!strncmp(argv[i], "--ofs=", 6)) {
+               if (!prefixcmp(argv[i], "--ofs=")) {
                        ctx.qry.ofs = atoi(argv[i] + 6);
                }
-               if (!strncmp(argv[i], "--scan-tree=", 12) ||
-                   !strncmp(argv[i], "--scan-path=", 12)) {
+               if (!prefixcmp(argv[i], "--scan-tree=") ||
+                   !prefixcmp(argv[i], "--scan-path=")) {
                        /* HACK: the global snapshot bitmask defines the
                         * set of allowed snapshot formats, but the config
                         * file hasn't been parsed yet so the mask is
index 248b6ee9d8ca8e60df28e25456e2ae04c901d34d..d740d383882dc8fb90142e97eb848c8eb749b88d 100644 (file)
--- a/parsing.c
+++ b/parsing.c
@@ -142,25 +142,25 @@ struct commitinfo *cgit_parse_commit(struct commit *commit)
        if (p == NULL)
                return ret;
 
-       if (strncmp(p, "tree ", 5))
+       if (prefixcmp(p, "tree "))
                die("Bad commit: %s", sha1_to_hex(commit->object.sha1));
        else
                p += 46; // "tree " + hex[40] + "\n"
 
-       while (!strncmp(p, "parent ", 7))
+       while (!prefixcmp(p, "parent "))
                p += 48; // "parent " + hex[40] + "\n"
 
-       if (p && !strncmp(p, "author ", 7)) {
+       if (p && !prefixcmp(p, "author ")) {
                p = parse_user(p + 7, &ret->author, &ret->author_email,
                        &ret->author_date);
        }
 
-       if (p && !strncmp(p, "committer ", 9)) {
+       if (p && !prefixcmp(p, "committer ")) {
                p = parse_user(p + 9, &ret->committer, &ret->committer_email,
                        &ret->committer_date);
        }
 
-       if (p && !strncmp(p, "encoding ", 9)) {
+       if (p && !prefixcmp(p, "encoding ")) {
                p += 9;
                t = strchr(p, '\n');
                if (t) {
@@ -239,7 +239,7 @@ struct taginfo *cgit_parse_tag(struct tag *tag)
                if (*p == '\n')
                        break;
 
-               if (!strncmp(p, "tagger ", 7)) {
+               if (!prefixcmp(p, "tagger ")) {
                        p = parse_user(p + 7, &ret->tagger, &ret->tagger_email,
                                &ret->tagger_date);
                } else {
index 1a2ea87e5008afe396df231114fabb59df8ce1b2..49de6583ff55852b6bd5af1c063e21d03d7c1d5d 100644 (file)
@@ -105,7 +105,7 @@ static void add_repo(const char *base, struct strbuf *path, repo_config_fn fn)
                return;
        strbuf_setlen(path, pathlen);
 
-       if (strncmp(base, path->buf, strlen(base)))
+       if (prefixcmp(path->buf, base))
                strbuf_addbuf(&rel, path);
        else
                strbuf_addstr(&rel, path->buf + strlen(base) + 1);
index 7af6fed0ad0c85b6db64472330fcfcf06bc0a065..20c91e3c2401d7da4d6fa3c634623ef60f71e5fe 100644 (file)
--- a/ui-refs.c
+++ b/ui-refs.c
@@ -240,9 +240,9 @@ void cgit_print_refs()
 
        html("<table class='list nowrap'>");
 
-       if (ctx.qry.path && !strncmp(ctx.qry.path, "heads", 5))
+       if (ctx.qry.path && !prefixcmp(ctx.qry.path, "heads"))
                cgit_print_branches(0);
-       else if (ctx.qry.path && !strncmp(ctx.qry.path, "tags", 4))
+       else if (ctx.qry.path && !prefixcmp(ctx.qry.path, "tags"))
                cgit_print_tags(0);
        else {
                cgit_print_branches(0);
index d32852f4d213a933be4c3ee9165bc40cbb5fb594..2c12de73d7cea9885f31fa58e0b5b325088b436e 100644 (file)
@@ -120,7 +120,7 @@ const char *cgit_repobasename(const char *reponame)
        /* strip trailing slashes */
        while (p && rvbuf[p] == '/') rvbuf[p--] = 0;
        /* strip trailing .git */
-       if (p >= 3 && !strncmp(&rvbuf[p-3], ".git", 4)) {
+       if (p >= 3 && !prefixcmp(&rvbuf[p-3], ".git")) {
                p -= 3; rvbuf[p--] = 0;
        }
        /* strip more trailing slashes if any */
index 3a7c7a75b000c949845af8e46c69df3757c1c0a9..63a5a754ba0297e8775c666495a885d942cf1b0e 100644 (file)
@@ -116,7 +116,7 @@ static char* append_readme_path(const char *filename, const char *ref, const cha
        if (!ref) {
                resolved_base = realpath(base_dir, NULL);
                resolved_full = realpath(full_path, NULL);
-               if (!resolved_base || !resolved_full || strncmp(resolved_base, resolved_full, strlen(resolved_base))) {
+               if (!resolved_base || !resolved_full || prefixcmp(resolved_full, resolved_base)) {
                        free(full_path);
                        full_path = NULL;
                }