aboutsummaryrefslogtreecommitdiff
path: root/archive-zip.c
diff options
context:
space:
mode:
authorJeff King <peff@peff.net>2011-06-21 21:24:07 -0400
committerJunio C Hamano <gitster@pobox.com>2011-06-22 11:12:35 -0700
commit4d7c98986379b0ab93cbf9092b60dfb5ab1cee7c (patch)
treebfee1193f7a5bcfb17829faf5c419bfd2a654bb4 /archive-zip.c
parent13e0f88d4aba326da9217c225d6ab5e642eb611d (diff)
downloadgit-4d7c98986379b0ab93cbf9092b60dfb5ab1cee7c.tar.gz
git-4d7c98986379b0ab93cbf9092b60dfb5ab1cee7c.tar.xz
archive: pass archiver struct to write_archive callback
The current archivers are very static; when you are in the write_tar_archive function, you know you are writing a tar. However, to facilitate runtime-configurable archivers that will share a common write function we need to tell the function which archiver was used. As a convenience, we also provide an opaque data pointer in the archiver struct so that individual archivers can put something useful there when they register themselves. Technically they could just use the "name" field to look in an internal map of names to data, but this is much simpler. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'archive-zip.c')
-rw-r--r--archive-zip.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/archive-zip.c b/archive-zip.c
index a776d8359..42df66080 100644
--- a/archive-zip.c
+++ b/archive-zip.c
@@ -261,7 +261,8 @@ static void dos_time(time_t *time, int *dos_date, int *dos_time)
*dos_time = t->tm_sec / 2 + t->tm_min * 32 + t->tm_hour * 2048;
}
-static int write_zip_archive(struct archiver_args *args)
+static int write_zip_archive(const struct archiver *ar,
+ struct archiver_args *args)
{
int err;