ifix: add "fattr" pledge for chmod(2) for cachefile - stagit-gopher - A git gopher frontend. (mirror) Err bitreich.org 70
hgit clone git://bitreich.org/stagit-gopher/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/stagit-gopher/ URL:git://bitreich.org/stagit-gopher/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/stagit-gopher/ bitreich.org 70
1Log /scm/stagit-gopher/log.gph bitreich.org 70
1Files /scm/stagit-gopher/files.gph bitreich.org 70
1Refs /scm/stagit-gopher/refs.gph bitreich.org 70
1Tags /scm/stagit-gopher/tag bitreich.org 70
1README /scm/stagit-gopher/file/README.gph bitreich.org 70
1LICENSE /scm/stagit-gopher/file/LICENSE.gph bitreich.org 70
i--- Err bitreich.org 70
1commit 181145cd95ae69fc4e54d98047aa1dc25d16b404 /scm/stagit-gopher/commit/181145cd95ae69fc4e54d98047aa1dc25d16b404.gph bitreich.org 70
1parent 77cc9b4e4f2c2d70880abf48090755902ee45c4f /scm/stagit-gopher/commit/77cc9b4e4f2c2d70880abf48090755902ee45c4f.gph bitreich.org 70
hAuthor: Hiltjo Posthuma <hiltjo@codemadness.org> URL:mailto:hiltjo@codemadness.org bitreich.org 70
iDate: Sun, 19 Nov 2017 14:57:01 +0100 Err bitreich.org 70
i Err bitreich.org 70
ifix: add "fattr" pledge for chmod(2) for cachefile Err bitreich.org 70
i Err bitreich.org 70
iimprove checks for when head is NULL (empty repo) Err bitreich.org 70
i Err bitreich.org 70
iDiffstat: Err bitreich.org 70
i M stagit-gopher.c | 12 +++++------- Err bitreich.org 70
i Err bitreich.org 70
i1 file changed, 5 insertions(+), 7 deletions(-) Err bitreich.org 70
i--- Err bitreich.org 70
1diff --git a/stagit-gopher.c b/stagit-gopher.c /scm/stagit-gopher/file/stagit-gopher.c.gph bitreich.org 70
i@@ -1091,7 +1091,7 @@ main(int argc, char *argv[]) Err bitreich.org 70
i size_t n; Err bitreich.org 70
i int i, fd; Err bitreich.org 70
i Err bitreich.org 70
i- if (pledge("stdio rpath wpath cpath", NULL) == -1) Err bitreich.org 70
i+ if (pledge("stdio rpath wpath cpath fattr", NULL) == -1) Err bitreich.org 70
i err(1, "pledge"); Err bitreich.org 70
i Err bitreich.org 70
i setlocale(LC_CTYPE, ""); Err bitreich.org 70
i@@ -1111,6 +1111,8 @@ main(int argc, char *argv[]) Err bitreich.org 70
i cachefile = argv[++i]; Err bitreich.org 70
i } Err bitreich.org 70
i } Err bitreich.org 70
i+ if (!cachefile && pledge("stdio rpath wpath cpath", NULL) == -1) Err bitreich.org 70
i+ err(1, "pledge"); Err bitreich.org 70
i if (!repodir) Err bitreich.org 70
i usage(argv[0]); Err bitreich.org 70
i Err bitreich.org 70
i@@ -1131,10 +1133,6 @@ main(int argc, char *argv[]) Err bitreich.org 70
i head = git_object_id(obj); Err bitreich.org 70
i git_object_free(obj); Err bitreich.org 70
i Err bitreich.org 70
i- /* don't cache if there is no HEAD */ Err bitreich.org 70
i- if (!head) Err bitreich.org 70
i- cachefile = NULL; Err bitreich.org 70
i- Err bitreich.org 70
i /* use directory name as name */ Err bitreich.org 70
i if ((name = strrchr(repodirabs, '/'))) Err bitreich.org 70
i name++; Err bitreich.org 70
i@@ -1196,7 +1194,7 @@ main(int argc, char *argv[]) Err bitreich.org 70
i fprintf(fp, "%-50.50s ", "Commit message"); Err bitreich.org 70
i fprintf(fp, "%s\n", "Author"); Err bitreich.org 70
i Err bitreich.org 70
i- if (cachefile) { Err bitreich.org 70
i+ if (cachefile && head) { Err bitreich.org 70
i /* read from cache file (does not need to exist) */ Err bitreich.org 70
i if ((rcachefp = fopen(cachefile, "r"))) { Err bitreich.org 70
i if (!fgets(lastoidstr, sizeof(lastoidstr), rcachefp)) Err bitreich.org 70
i@@ -1258,7 +1256,7 @@ main(int argc, char *argv[]) Err bitreich.org 70
i fclose(fp); Err bitreich.org 70
i Err bitreich.org 70
i /* rename new cache file on success */ Err bitreich.org 70
i- if (cachefile) { Err bitreich.org 70
i+ if (cachefile && head) { Err bitreich.org 70
i if (rename(tmppath, cachefile)) Err bitreich.org 70
i err(1, "rename: '%s' to '%s'", tmppath, cachefile); Err bitreich.org 70
i umask((mask = umask(0))); Err bitreich.org 70
.
Response:
text/plain