itstagit.c: allow specifying alternate clone url in alturl file - stagit - [fork] customized build of stagit, the static git page generator Err adamsgaard.dk 70 hgit clone git://src.adamsgaard.dk/stagit URL:git://src.adamsgaard.dk/stagit adamsgaard.dk 70 1Log /src/stagit/log.gph adamsgaard.dk 70 1Files /src/stagit/files.gph adamsgaard.dk 70 1Refs /src/stagit/refs.gph adamsgaard.dk 70 1README /src/stagit/file/README.gph adamsgaard.dk 70 1LICENSE /src/stagit/file/LICENSE.gph adamsgaard.dk 70 i--- Err adamsgaard.dk 70 1commit 7e58463ae5df8c8ff71767d71257388c9f8a11c3 /src/stagit/commit/7e58463ae5df8c8ff71767d71257388c9f8a11c3.gph adamsgaard.dk 70 1parent 02b67e7268ee2cb11a0fe254a832f7e6f0dcf85d /src/stagit/commit/02b67e7268ee2cb11a0fe254a832f7e6f0dcf85d.gph adamsgaard.dk 70 hAuthor: Anders Damsgaard URL:mailto:anders@adamsgaard.dk adamsgaard.dk 70 iDate: Sat, 28 Nov 2020 00:29:38 +0100 Err adamsgaard.dk 70 i Err adamsgaard.dk 70 istagit.c: allow specifying alternate clone url in alturl file Err adamsgaard.dk 70 i Err adamsgaard.dk 70 iDiffstat: Err adamsgaard.dk 70 i M stagit.c | 24 +++++++++++++++++++++++- Err adamsgaard.dk 70 i Err adamsgaard.dk 70 i1 file changed, 23 insertions(+), 1 deletion(-) Err adamsgaard.dk 70 i--- Err adamsgaard.dk 70 1diff --git a/stagit.c b/stagit.c /src/stagit/file/stagit.c.gph adamsgaard.dk 70 it@@ -66,6 +66,7 @@ static char *name = ""; Err adamsgaard.dk 70 i static char *strippedname = ""; Err adamsgaard.dk 70 i static char description[255]; Err adamsgaard.dk 70 i static char cloneurl[1024]; Err adamsgaard.dk 70 i+static char altcloneurl[1024]; Err adamsgaard.dk 70 i static char *submodules; Err adamsgaard.dk 70 i static char *releasedir = "../releases"; Err adamsgaard.dk 70 i static char *licensefiles[] = { "HEAD:LICENSE", "HEAD:LICENSE.md", "HEAD:LICENSE.txt", "HEAD:LICENSE.rst", "HEAD:COPYING" }; Err adamsgaard.dk 70 it@@ -479,7 +480,15 @@ writeheader(FILE *fp, const char *title) Err adamsgaard.dk 70 i xmlencode(fp, cloneurl, strlen(cloneurl)); Err adamsgaard.dk 70 i fputs("\">", fp); Err adamsgaard.dk 70 i xmlencode(fp, cloneurl, strlen(cloneurl)); Err adamsgaard.dk 70 i- fputs("", fp); Err adamsgaard.dk 70 i+ fputs("", fp); Err adamsgaard.dk 70 i+ if (altcloneurl[0]) { Err adamsgaard.dk 70 i+ fputs("
\ngit clone ", fp); Err adamsgaard.dk 70 i+ xmlencode(fp, altcloneurl, strlen(altcloneurl)); Err adamsgaard.dk 70 i+ fputs("", fp); Err adamsgaard.dk 70 i+ } Err adamsgaard.dk 70 i+ fputs("", fp); Err adamsgaard.dk 70 i } Err adamsgaard.dk 70 i fputs("\n", fp); Err adamsgaard.dk 70 i fprintf(fp, "Log | ", relpath); Err adamsgaard.dk 70 it@@ -1242,6 +1251,19 @@ main(int argc, char *argv[]) Err adamsgaard.dk 70 i fclose(fpread); Err adamsgaard.dk 70 i } Err adamsgaard.dk 70 i Err adamsgaard.dk 70 i+ /* read alturl or .git/alturl */ Err adamsgaard.dk 70 i+ joinpath(path, sizeof(path), repodir, "alturl"); Err adamsgaard.dk 70 i+ if (!(fpread = fopen(path, "r"))) { Err adamsgaard.dk 70 i+ joinpath(path, sizeof(path), repodir, ".git/alturl"); Err adamsgaard.dk 70 i+ fpread = fopen(path, "r"); Err adamsgaard.dk 70 i+ } Err adamsgaard.dk 70 i+ if (fpread) { Err adamsgaard.dk 70 i+ if (!fgets(altcloneurl, sizeof(altcloneurl), fpread)) Err adamsgaard.dk 70 i+ altcloneurl[0] = '\0'; Err adamsgaard.dk 70 i+ altcloneurl[strcspn(altcloneurl, "\n")] = '\0'; Err adamsgaard.dk 70 i+ fclose(fpread); Err adamsgaard.dk 70 i+ } Err adamsgaard.dk 70 i+ Err adamsgaard.dk 70 i /* check LICENSE */ Err adamsgaard.dk 70 i for (i = 0; i < LEN(licensefiles) && !license; i++) { Err adamsgaard.dk 70 i if (!git_revparse_single(&obj, repo, licensefiles[i]) && Err adamsgaard.dk 70 .