Diff options
authorBryce Kwon <bryce@brycekwon.com>
committerBryce Kwon <bryce@brycekwon.com>
commit
parent
tree
download
Move cgit.c's own helpers out of shared.c
Diffstat (limited to '')
-rw-r--r--source/shared.c68
1 file changed, 0 insertions, 68 deletions
diff --git a/source/shared.c b/source/shared.c
index 5c5e65c..72ec2d1 100644
--- a/source/shared.c
+++ b/source/shared.c
@@ -204,13 +204,6 @@ char *cgit_trim_end(const char *str, char c)
return xstrndup(str, len);
}
-char *cgit_ensure_end(const char *str, char c)
-{
- size_t len = strlen(str);
-
- return len && str[len - 1] == c ? xstrdup(str) : xstrfmt("%s%c", str, c);
-}
-
void strbuf_ensure_end(struct strbuf *sb, char c)
{
if (!sb->len || sb->buf[sb->len - 1] != c)
@@ -366,67 +359,6 @@ void cgit_diff_commit(struct commit *commit, filepair_fn fn, const char *prefix)
cgit_diff_tree(old_oid, &commit->object.oid, fn, prefix, ctx.qry.ignorews);
}
-/*
- * Git's parse_date_format dies on anything unknown, which would turn a
- * cgitrc typo into a failed request, so only documented formats reach it.
- */
-void cgit_parse_date_format(const char *format, struct date_mode *mode)
-{
- static const char * const names[] = {
- "default", "human", "iso", "iso-strict", "iso8601",
- "iso8601-strict", "raw", "relative", "rfc",
- "rfc2822", "short", "unix",
- };
- const char *rest;
- size_t i;
-
- if (skip_prefix(format, "format:", &rest)) {
- // An empty strftime format would render every date blank.
- if (*rest)
- parse_date_format(format, mode);
- return;
- }
-
- // git reads local only as a whole alias of default-local, and dies on
- // it with a suffix of its own.
- if (!strcmp(format, "local")) {
- parse_date_format(format, mode);
- return;
- }
-
- for (i = 0; i < ARRAY_SIZE(names); i++) {
- if (!skip_prefix(format, names[i], &rest))
- continue;
- // "iso" also prefixes "iso8601", so a partial hit is skipped.
- if (*rest && strcmp(rest, "-local"))
- continue;
- parse_date_format(format, mode);
- return;
- }
-}
-
-void cgit_prepare_repo_env(struct cgit_repo *repo)
-{
- const struct {
- const char *name;
- const char *value;
- } vars[] = {
- { .name = "CGIT_REPO_URL", .value = repo->url },
- { .name = "CGIT_REPO_NAME", .value = repo->name },
- { .name = "CGIT_REPO_PATH", .value = repo->path },
- { .name = "CGIT_REPO_OWNER", .value = repo->owner },
- { .name = "CGIT_REPO_DEFBRANCH", .value = repo->defbranch },
- { .name = "CGIT_REPO_SECTION", .value = repo->section },
- { .name = "CGIT_REPO_CLONE_URL", .value = repo->clone_url }
- };
- size_t i;
-
- for (i = 0; i < ARRAY_SIZE(vars); i++)
- if (vars[i].value && setenv(vars[i].name, vars[i].value, 1))
- fprintf(stderr, "[cgit] Unable to set %s=%s: %s (%d)\n",
- vars[i].name, vars[i].value, strerror(errno), errno);
-}
-
int cgit_read_first_line(const char *path, char **buf)
{
int fd, err;