treat an empty repo (without a HEAD) as valid - stagit-gopher - A git gopher frontend. (mirror) HTML git clone git://bitreich.org/stagit-gopher/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/stagit-gopher/ DIR Log DIR Files DIR Refs DIR Tags DIR README DIR LICENSE --- DIR commit 30116a4ef2c1d90a3662b2878e54f3da2fc56894 DIR parent 44a49f51db565cbfc31f31393d8dcdec1cdc8167 HTML Author: Hiltjo Posthuma <hiltjo@codemadness.org> Date: Sun, 29 May 2016 15:04:52 +0200 treat an empty repo (without a HEAD) as valid and create the standard files. Disable caching if there is no HEAD. Diffstat: M stagit.c | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) --- DIR diff --git a/stagit.c b/stagit.c @@ -1038,11 +1038,14 @@ main(int argc, char *argv[]) } /* find HEAD */ - if (git_revparse_single(&obj, repo, "HEAD")) - return 1; - head = git_object_id(obj); + if (!git_revparse_single(&obj, repo, "HEAD")) + head = git_object_id(obj); git_object_free(obj); + /* don't cache if there is no HEAD */ + if (!head) + cachefile = NULL; + /* use directory name as name */ if ((name = strrchr(repodirabs, '/'))) name++; @@ -1138,7 +1141,8 @@ main(int argc, char *argv[]) } fclose(wcachefp); } else { - writelog(fp, head); + if (head) + writelog(fp, head); } fputs("</tbody></table>", fp); @@ -1148,7 +1152,8 @@ main(int argc, char *argv[]) /* files for HEAD */ fp = efopen("files.html", "w"); writeheader(fp, "Files"); - writefiles(fp, head, "HEAD"); + if (head) + writefiles(fp, head, "HEAD"); writefooter(fp); fclose(fp);