about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorLars Hjemli2008-10-05 13:13:03 +0200
committerLars Hjemli2008-10-05 13:13:03 +0200
commit204669ff4a4028a82cc48e9319632595ba3ff703 (patch)
treeb951f29e966e13fb62f9edfdf51cbdfb19e9c868
parentui-diff: make diffstat header a link to the full diff (diff)
downloadcgit-204669ff4a4028a82cc48e9319632595ba3ff703.tar.gz
cgit-204669ff4a4028a82cc48e9319632595ba3ff703.zip
ui-snapshot.c: specify archiver_args.baselen
The struct member was introduces in git commit d53fe8187c38, but the cgit
testsuite failed to detect that cgit always generated archives without
prefixes, i.e. the result from cgit_repobasename was ignored.

This fixes the bug and the testsuite.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rwxr-xr-xtests/t0107-snapshot.sh5
-rw-r--r--ui-snapshot.c8
2 files changed, 11 insertions, 2 deletions
diff --git a/tests/t0107-snapshot.sh b/tests/t0107-snapshot.sh index 8e90e10..d97c465 100755 --- a/tests/t0107-snapshot.sh +++ b/tests/t0107-snapshot.sh
@@ -21,7 +21,10 @@ run_test 'strip off the header lines' '
21' 21'
22 22
23run_test 'verify gzip format' 'gunzip --test trash/test.tar.gz' 23run_test 'verify gzip format' 'gunzip --test trash/test.tar.gz'
24run_test 'untar' 'tar -xf trash/test.tar.gz -C trash' 24run_test 'untar' '
25 rm -rf trash/foo &&
26 tar -xf trash/test.tar.gz -C trash
27'
25 28
26run_test 'count files' ' 29run_test 'count files' '
27 c=$(ls -1 trash/foo/ | wc -l) && 30 c=$(ls -1 trash/foo/ | wc -l) &&
diff --git a/ui-snapshot.c b/ui-snapshot.c index 966a140..7a597ff 100644 --- a/ui-snapshot.c +++ b/ui-snapshot.c
@@ -82,7 +82,13 @@ static int make_snapshot(const struct cgit_snapshot_format *format,
82 return 1; 82 return 1;
83 } 83 }
84 memset(&args, 0, sizeof(args)); 84 memset(&args, 0, sizeof(args));
85 args.base = fmt("%s/", prefix); 85 if (prefix) {
86 args.base = fmt("%s/", prefix);
87 args.baselen = strlen(prefix) + 1;
88 } else {
89 args.base = "";
90 args.baselen = 0;
91 }
86 args.tree = commit->tree; 92 args.tree = commit->tree;
87 args.time = commit->date; 93 args.time = commit->date;
88 ctx.page.mimetype = xstrdup(format->mimetype); 94 ctx.page.mimetype = xstrdup(format->mimetype);