fix joinpath(): use of global 'repodir', should be 'path' - stagit-gopher - A g… | |
git clone git://bitreich.org/stagit-gopher/ git://enlrupgkhuxnvlhsf6lc3fziv5h2h… | |
Log | |
Files | |
Refs | |
Tags | |
README | |
LICENSE | |
--- | |
commit 543582034eed3faf6120de321354f36ec8a2c0b4 | |
parent 2d8eb85f01fdb97ab76c538b868128db4c3e99f0 | |
Author: Hiltjo Posthuma <[email protected]> | |
Date: Tue, 3 May 2016 20:42:46 +0200 | |
fix joinpath(): use of global 'repodir', should be 'path' | |
use joinpath for another case. | |
Diffstat: | |
M stagit-index.c | 24 ++++++++++++------------ | |
M stagit.c | 39 ++++++++++++++---------------… | |
2 files changed, 29 insertions(+), 34 deletions(-) | |
--- | |
diff --git a/stagit-index.c b/stagit-index.c | |
@@ -30,6 +30,18 @@ pledge(const char *promises, const char *paths[]) | |
} | |
#endif | |
+void | |
+joinpath(char *buf, size_t bufsiz, const char *path, const char *path2) | |
+{ | |
+ int r; | |
+ | |
+ r = snprintf(buf, bufsiz, "%s%s%s", | |
+ path, path[0] && path[strlen(path) - 1] != '/' ? "/" : "", pat… | |
+ if (r == -1 || (size_t)r >= bufsiz) | |
+ errx(1, "path truncated: '%s%s%s'", | |
+ path, path[0] && path[strlen(path) - 1] != '/' ? "/" :… | |
+} | |
+ | |
/* Escape characters below as HTML 2.0 / XML 1.0. */ | |
void | |
xmlencode(FILE *fp, const char *s, size_t len) | |
@@ -139,18 +151,6 @@ err: | |
return ret; | |
} | |
-void | |
-joinpath(char *buf, size_t bufsiz, const char *path, const char *path2) | |
-{ | |
- int r; | |
- | |
- r = snprintf(buf, bufsiz, "%s%s%s", | |
- repodir, path[0] && path[strlen(path) - 1] != '/' ? "/" : "", … | |
- if (r == -1 || (size_t)r >= bufsiz) | |
- errx(1, "path truncated: '%s%s%s'", | |
- path, path[0] && path[strlen(path) - 1] != '/' ? "/" :… | |
-} | |
- | |
int | |
main(int argc, char *argv[]) | |
{ | |
diff --git a/stagit.c b/stagit.c | |
@@ -77,6 +77,18 @@ pledge(const char *promises, const char *paths[]) | |
#endif | |
void | |
+joinpath(char *buf, size_t bufsiz, const char *path, const char *path2) | |
+{ | |
+ int r; | |
+ | |
+ r = snprintf(buf, bufsiz, "%s%s%s", | |
+ path, path[0] && path[strlen(path) - 1] != '/' ? "/" : "", pat… | |
+ if (r == -1 || (size_t)r >= bufsiz) | |
+ errx(1, "path truncated: '%s%s%s'", | |
+ path, path[0] && path[strlen(path) - 1] != '/' ? "/" :… | |
+} | |
+ | |
+void | |
deltainfo_free(struct deltainfo *di) | |
{ | |
if (!di) | |
@@ -796,17 +808,12 @@ writefilestree(FILE *fp, git_tree *tree, const char *bran… | |
if (!(entry = git_tree_entry_byindex(tree, i)) || | |
!(entryname = git_tree_entry_name(entry))) | |
return -1; | |
- r = snprintf(entrypath, sizeof(entrypath), "%s%s%s", | |
- path, path[0] ? "/" : "", entryname); | |
- if (r == -1 || (size_t)r >= sizeof(entrypath)) | |
- errx(1, "path truncated: '%s%s%s'", | |
- path, path[0] ? "/" : "", entryname); | |
- | |
- r = snprintf(filepath, sizeof(filepath), "file/%s%s%s.html", | |
- path, path[0] ? "/" : "", entryname); | |
+ joinpath(entrypath, sizeof(entrypath), path, entryname); | |
+ | |
+ r = snprintf(filepath, sizeof(filepath), "file/%s.html", | |
+ entrypath); | |
if (r == -1 || (size_t)r >= sizeof(filepath)) | |
- errx(1, "path truncated: 'file/%s%s%s.html'", | |
- path, path[0] ? "/" : "", entryname); | |
+ errx(1, "path truncated: 'file/%s.html'", entrypath); | |
if (!git_tree_entry_to_object(&obj, repo, entry)) { | |
switch (git_object_type(obj)) { | |
@@ -991,18 +998,6 @@ err: | |
} | |
void | |
-joinpath(char *buf, size_t bufsiz, const char *path, const char *path2) | |
-{ | |
- int r; | |
- | |
- r = snprintf(buf, bufsiz, "%s%s%s", | |
- repodir, path[0] && path[strlen(path) - 1] != '/' ? "/" : "", … | |
- if (r == -1 || (size_t)r >= bufsiz) | |
- errx(1, "path truncated: '%s%s%s'", | |
- path, path[0] && path[strlen(path) - 1] != '/' ? "/" :… | |
-} | |
- | |
-void | |
usage(char *argv0) | |
{ | |
fprintf(stderr, "%s [-c cachefile] repodir\n", argv0); |