summaryrefslogtreecommitdiff
path: root/libarchive
diff options
context:
space:
mode:
authorTomas Bzatek <tbzatek@users.sourceforge.net>2008-10-05 12:25:03 +0200
committerTomas Bzatek <tbzatek@users.sourceforge.net>2008-10-05 12:25:03 +0200
commitbfe9d91c2aa2ff3cea7754c1cd8ac36e5227edad (patch)
tree2fafe098dd9579b0f7277a4d418b39923ae8bb42 /libarchive
parentd0caac91ac0a03e021d50d1de978733e11ba2ccd (diff)
downloadtuxcmd-modules-bfe9d91c2aa2ff3cea7754c1cd8ac36e5227edad.tar.xz
Move plugin global data allocation back to the module
Diffstat (limited to 'libarchive')
-rw-r--r--libarchive/libarchive.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/libarchive/libarchive.c b/libarchive/libarchive.c
index dac84d4..4a360bd 100644
--- a/libarchive/libarchive.c
+++ b/libarchive/libarchive.c
@@ -83,21 +83,26 @@ struct TVFSGlobs {
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////
// Basic initialization functions
-int VFSAllocNeeded()
+struct TVFSGlobs *
+VFSNew (TVFSLogFunc log_func)
{
- return sizeof(struct TVFSGlobs);
-}
+ struct TVFSGlobs * globs;
+
+ globs = (struct TVFSGlobs *) malloc (sizeof (struct TVFSGlobs));
+ memset (globs, 0, sizeof (struct TVFSGlobs));
-void VFSInit(struct TVFSGlobs *globs, TVFSLogFunc log_func)
-{
globs->block_size = DEFAULT_BLOCK_SIZE;
globs->log_func = log_func;
if (globs->log_func != NULL) globs->log_func((char*)"libarchive plugin: VFSInit");
+
+ return globs;
}
-void VFSDestroy(struct TVFSGlobs *globs)
+void
+VFSFree (struct TVFSGlobs *globs)
{
if (globs->log_func != NULL) globs->log_func((char*)"libarchive plugin: VFSDestroy");
+ free (globs);
}
int VFSVersion()