-rw-r--r-- | ui-snapshot.c | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/ui-snapshot.c b/ui-snapshot.c index 649569f..f623f35 100644 --- a/ui-snapshot.c +++ b/ui-snapshot.c @@ -10,3 +10,3 @@ -static int write_tar_gzip_archive(struct archiver_args *args) +static int write_compressed_tar_archive(struct archiver_args *args,const char *filter) { @@ -26,3 +26,3 @@ static int write_tar_gzip_archive(struct archiver_args *args) chk_non_negative(dup2(rw[0],STDIN_FILENO), "Redirecting compressor input to stdin"); - execlp("gzip","gzip",NULL); + execlp(filter,filter,NULL); _exit(-1); @@ -46,2 +46,11 @@ static int write_tar_gzip_archive(struct archiver_args *args) +static int write_tar_gzip_archive(struct archiver_args *args) +{ + return write_compressed_tar_archive(args,"gzip"); +} +static int write_tar_bzip2_archive(struct archiver_args *args) +{ + return write_compressed_tar_archive(args,"bzip2"); +} + static const struct snapshot_archive_t { @@ -52,3 +61,4 @@ static const struct snapshot_archive_t { { ".zip", "application/x-zip", write_zip_archive }, - { ".tar.gz", "application/x-gzip", write_tar_gzip_archive } + { ".tar.gz", "application/x-tar", write_tar_gzip_archive }, + { ".tar.bz2", "application/x-tar", write_tar_bzip2_archive } }; @@ -104 +114,2 @@ void cgit_print_snapshot_links(const char *repo,const char *hex) } +/* vim:set sw=8: */ |