all repos — cgit @ 204669ff4a4028a82cc48e9319632595ba3ff703

a hyperfast web frontend for git written in c

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>
Lars Hjemli hjemli@gmail.com
Sun, 05 Oct 2008 13:13:03 +0200
commit

204669ff4a4028a82cc48e9319632595ba3ff703

parent

f82b19407dd876e6c02a572615bf34b09f6fa831

2 files changed, 11 insertions(+), 2 deletions(-)

jump to
M tests/t0107-snapshot.shtests/t0107-snapshot.sh

@@ -21,7 +21,10 @@ tail -n +6 trash/tmp > trash/test.tar.gz

' run_test 'verify gzip format' 'gunzip --test trash/test.tar.gz' -run_test 'untar' 'tar -xf trash/test.tar.gz -C trash' +run_test 'untar' ' + rm -rf trash/foo && + tar -xf trash/test.tar.gz -C trash +' run_test 'count files' ' c=$(ls -1 trash/foo/ | wc -l) &&
M ui-snapshot.cui-snapshot.c

@@ -82,7 +82,13 @@ cgit_print_error(fmt("Not a commit reference: %s", hex));

return 1; } memset(&args, 0, sizeof(args)); - args.base = fmt("%s/", prefix); + if (prefix) { + args.base = fmt("%s/", prefix); + args.baselen = strlen(prefix) + 1; + } else { + args.base = ""; + args.baselen = 0; + } args.tree = commit->tree; args.time = commit->date; ctx.page.mimetype = xstrdup(format->mimetype);