Replace most uses of strncmp() with prefixcmp()
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>
Tento commit je obsažen v:
rodič
d523dacc3b
revize
36bdb2171f
18
cgit.c
18
cgit.c
@ -863,7 +863,7 @@ static void cgit_parse_args(int argc, const char **argv)
|
|||||||
int scan = 0;
|
int scan = 0;
|
||||||
|
|
||||||
for (i = 1; i < argc; i++) {
|
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);
|
ctx.cfg.cache_root = xstrdup(argv[i] + 8);
|
||||||
}
|
}
|
||||||
if (!strcmp(argv[i], "--nocache")) {
|
if (!strcmp(argv[i], "--nocache")) {
|
||||||
@ -872,28 +872,28 @@ static void cgit_parse_args(int argc, const char **argv)
|
|||||||
if (!strcmp(argv[i], "--nohttp")) {
|
if (!strcmp(argv[i], "--nohttp")) {
|
||||||
ctx.env.no_http = "1";
|
ctx.env.no_http = "1";
|
||||||
}
|
}
|
||||||
if (!strncmp(argv[i], "--query=", 8)) {
|
if (!prefixcmp(argv[i], "--query=")) {
|
||||||
ctx.qry.raw = xstrdup(argv[i] + 8);
|
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);
|
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);
|
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.head = xstrdup(argv[i] + 7);
|
||||||
ctx.qry.has_symref = 1;
|
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.sha1 = xstrdup(argv[i] + 7);
|
||||||
ctx.qry.has_sha1 = 1;
|
ctx.qry.has_sha1 = 1;
|
||||||
}
|
}
|
||||||
if (!strncmp(argv[i], "--ofs=", 6)) {
|
if (!prefixcmp(argv[i], "--ofs=")) {
|
||||||
ctx.qry.ofs = atoi(argv[i] + 6);
|
ctx.qry.ofs = atoi(argv[i] + 6);
|
||||||
}
|
}
|
||||||
if (!strncmp(argv[i], "--scan-tree=", 12) ||
|
if (!prefixcmp(argv[i], "--scan-tree=") ||
|
||||||
!strncmp(argv[i], "--scan-path=", 12)) {
|
!prefixcmp(argv[i], "--scan-path=")) {
|
||||||
/* HACK: the global snapshot bitmask defines the
|
/* HACK: the global snapshot bitmask defines the
|
||||||
* set of allowed snapshot formats, but the config
|
* set of allowed snapshot formats, but the config
|
||||||
* file hasn't been parsed yet so the mask is
|
* file hasn't been parsed yet so the mask is
|
||||||
|
12
parsing.c
12
parsing.c
@ -142,25 +142,25 @@ struct commitinfo *cgit_parse_commit(struct commit *commit)
|
|||||||
if (p == NULL)
|
if (p == NULL)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
if (strncmp(p, "tree ", 5))
|
if (prefixcmp(p, "tree "))
|
||||||
die("Bad commit: %s", sha1_to_hex(commit->object.sha1));
|
die("Bad commit: %s", sha1_to_hex(commit->object.sha1));
|
||||||
else
|
else
|
||||||
p += 46; // "tree " + hex[40] + "\n"
|
p += 46; // "tree " + hex[40] + "\n"
|
||||||
|
|
||||||
while (!strncmp(p, "parent ", 7))
|
while (!prefixcmp(p, "parent "))
|
||||||
p += 48; // "parent " + hex[40] + "\n"
|
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,
|
p = parse_user(p + 7, &ret->author, &ret->author_email,
|
||||||
&ret->author_date);
|
&ret->author_date);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (p && !strncmp(p, "committer ", 9)) {
|
if (p && !prefixcmp(p, "committer ")) {
|
||||||
p = parse_user(p + 9, &ret->committer, &ret->committer_email,
|
p = parse_user(p + 9, &ret->committer, &ret->committer_email,
|
||||||
&ret->committer_date);
|
&ret->committer_date);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (p && !strncmp(p, "encoding ", 9)) {
|
if (p && !prefixcmp(p, "encoding ")) {
|
||||||
p += 9;
|
p += 9;
|
||||||
t = strchr(p, '\n');
|
t = strchr(p, '\n');
|
||||||
if (t) {
|
if (t) {
|
||||||
@ -239,7 +239,7 @@ struct taginfo *cgit_parse_tag(struct tag *tag)
|
|||||||
if (*p == '\n')
|
if (*p == '\n')
|
||||||
break;
|
break;
|
||||||
|
|
||||||
if (!strncmp(p, "tagger ", 7)) {
|
if (!prefixcmp(p, "tagger ")) {
|
||||||
p = parse_user(p + 7, &ret->tagger, &ret->tagger_email,
|
p = parse_user(p + 7, &ret->tagger, &ret->tagger_email,
|
||||||
&ret->tagger_date);
|
&ret->tagger_date);
|
||||||
} else {
|
} else {
|
||||||
|
@ -105,7 +105,7 @@ static void add_repo(const char *base, struct strbuf *path, repo_config_fn fn)
|
|||||||
return;
|
return;
|
||||||
strbuf_setlen(path, pathlen);
|
strbuf_setlen(path, pathlen);
|
||||||
|
|
||||||
if (strncmp(base, path->buf, strlen(base)))
|
if (prefixcmp(path->buf, base))
|
||||||
strbuf_addbuf(&rel, path);
|
strbuf_addbuf(&rel, path);
|
||||||
else
|
else
|
||||||
strbuf_addstr(&rel, path->buf + strlen(base) + 1);
|
strbuf_addstr(&rel, path->buf + strlen(base) + 1);
|
||||||
|
@ -240,9 +240,9 @@ void cgit_print_refs()
|
|||||||
|
|
||||||
html("<table class='list nowrap'>");
|
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);
|
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);
|
cgit_print_tags(0);
|
||||||
else {
|
else {
|
||||||
cgit_print_branches(0);
|
cgit_print_branches(0);
|
||||||
|
@ -120,7 +120,7 @@ const char *cgit_repobasename(const char *reponame)
|
|||||||
/* strip trailing slashes */
|
/* strip trailing slashes */
|
||||||
while (p && rvbuf[p] == '/') rvbuf[p--] = 0;
|
while (p && rvbuf[p] == '/') rvbuf[p--] = 0;
|
||||||
/* strip trailing .git */
|
/* 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;
|
p -= 3; rvbuf[p--] = 0;
|
||||||
}
|
}
|
||||||
/* strip more trailing slashes if any */
|
/* strip more trailing slashes if any */
|
||||||
|
@ -116,7 +116,7 @@ static char* append_readme_path(const char *filename, const char *ref, const cha
|
|||||||
if (!ref) {
|
if (!ref) {
|
||||||
resolved_base = realpath(base_dir, NULL);
|
resolved_base = realpath(base_dir, NULL);
|
||||||
resolved_full = realpath(full_path, 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);
|
free(full_path);
|
||||||
full_path = NULL;
|
full_path = NULL;
|
||||||
}
|
}
|
||||||
|
Načítá se…
Odkázat v novém úkolu
Zablokovat Uživatele