aboutsummaryrefslogtreecommitdiff
path: root/src/archive
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2010-01-18 09:57:53 +0100
committerMax Kellermann <max@duempel.org>2010-01-18 09:57:53 +0100
commitfb9bd53328e3ff57ea4b3cfee24068f9fb54927b (patch)
treee350fdb14ebf8916897797c59527f25d703d3883 /src/archive
parenta0a26d3341022552984a3307393a8f701f350edc (diff)
input_stream: added function input_stream_deinit()
All close() implementations must call this method.
Diffstat (limited to 'src/archive')
-rw-r--r--src/archive/bz2_archive_plugin.c2
-rw-r--r--src/archive/iso9660_archive_plugin.c3
-rw-r--r--src/archive/zzip_archive_plugin.c1
3 files changed, 6 insertions, 0 deletions
diff --git a/src/archive/bz2_archive_plugin.c b/src/archive/bz2_archive_plugin.c
index 75b4b1ec..67cc0055 100644
--- a/src/archive/bz2_archive_plugin.c
+++ b/src/archive/bz2_archive_plugin.c
@@ -182,6 +182,7 @@ bz2_open_stream(struct archive_file *file,
bis->base.seekable = false;
if (!bz2_alloc(bis, error_r)) {
+ input_stream_deinit(&bis->base);
g_free(bis);
return NULL;
}
@@ -202,6 +203,7 @@ bz2_is_close(struct input_stream *is)
bz2_close(&bis->archive->base);
+ input_stream_deinit(&bis->base);
g_free(bis);
}
diff --git a/src/archive/iso9660_archive_plugin.c b/src/archive/iso9660_archive_plugin.c
index 38003da9..30f8e7f5 100644
--- a/src/archive/iso9660_archive_plugin.c
+++ b/src/archive/iso9660_archive_plugin.c
@@ -212,6 +212,9 @@ iso9660_input_close(struct input_stream *is)
g_free(iis->statbuf);
iso9660_archive_close(&iis->archive->base);
+
+ input_stream_deinit(&iis->base);
+ g_free(iis);
}
diff --git a/src/archive/zzip_archive_plugin.c b/src/archive/zzip_archive_plugin.c
index 7e59a093..fdf6b677 100644
--- a/src/archive/zzip_archive_plugin.c
+++ b/src/archive/zzip_archive_plugin.c
@@ -171,6 +171,7 @@ zzip_input_close(struct input_stream *is)
zzip_file_close(zis->file);
zzip_archive_close(&zis->archive->base);
+ input_stream_deinit(&zis->base);
g_free(zis);
}