diff options
Diffstat (limited to 'src/archive/zzip_archive_plugin.c')
-rw-r--r-- | src/archive/zzip_archive_plugin.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/archive/zzip_archive_plugin.c b/src/archive/zzip_archive_plugin.c index ba89e82b3..1174629ae 100644 --- a/src/archive/zzip_archive_plugin.c +++ b/src/archive/zzip_archive_plugin.c @@ -32,6 +32,8 @@ #include <string.h> struct zzip_archive { + struct archive_file base; + ZZIP_DIR *dir; ZZIP_FILE *file; size_t length; @@ -55,6 +57,8 @@ zzip_archive_open(const char *pathname) struct zzip_archive *context = g_malloc(sizeof(*context)); ZZIP_DIRENT dirent; + archive_file_init(&context->base, &zzip_archive_plugin); + // open archive context->list = NULL; context->dir = zzip_dir_open(pathname, NULL); @@ -71,7 +75,7 @@ zzip_archive_open(const char *pathname) } } - return (struct archive_file *)context; + return &context->base; } static void |