From 303680ebcd5adaac2934b63a0edc2d9d1a36d7fb Mon Sep 17 00:00:00 2001 From: David Oberhollenzer Date: Wed, 12 Feb 2020 02:22:31 +0100 Subject: Implement a more explicit object system Make every dynamically allocated, opaque data structure inherit from a common sqfs_object_t structure with common entry points (e.g. destroy). This removes tons of public API functions and replaces them with a simple sqfs_destroy instead. If semantics of the (until now implicit) object system need to be extended, it can be much more conveniantely done this way. Signed-off-by: David Oberhollenzer --- extras/browse.c | 10 +++++----- extras/list_files.c | 8 ++++---- extras/mk42sqfs.c | 12 ++++++------ extras/mknastyfs.c | 12 ++++++------ 4 files changed, 21 insertions(+), 21 deletions(-) (limited to 'extras') diff --git a/extras/browse.c b/extras/browse.c index 49ddb7e..0bca183 100644 --- a/extras/browse.c +++ b/extras/browse.c @@ -599,16 +599,16 @@ int main(int argc, char **argv) status = EXIT_SUCCESS; free(buffer); out: - sqfs_data_reader_destroy(data); + sqfs_destroy(data); out_dir: if (working_dir != NULL) free(working_dir); - sqfs_dir_reader_destroy(dr); + sqfs_destroy(dr); out_id: - sqfs_id_table_destroy(idtbl); + sqfs_destroy(idtbl); out_cmp: - cmp->destroy(cmp); + sqfs_destroy(cmp); out_fd: - file->destroy(file); + sqfs_destroy(file); return status; } diff --git a/extras/list_files.c b/extras/list_files.c index de390f0..5e181f2 100644 --- a/extras/list_files.c +++ b/extras/list_files.c @@ -134,12 +134,12 @@ int main(int argc, char **argv) out: if (root != NULL) sqfs_dir_tree_destroy(root); - sqfs_dir_reader_destroy(dr); + sqfs_destroy(dr); out_id: - sqfs_id_table_destroy(idtbl); + sqfs_destroy(idtbl); out_cmp: - cmp->destroy(cmp); + sqfs_destroy(cmp); out_fd: - file->destroy(file); + sqfs_destroy(file); return status; } diff --git a/extras/mk42sqfs.c b/extras/mk42sqfs.c index 0dbcc4e..53cf2f0 100644 --- a/extras/mk42sqfs.c +++ b/extras/mk42sqfs.c @@ -189,16 +189,16 @@ int main(void) /* cleanup */ status = EXIT_SUCCESS; - sqfs_id_table_destroy(idtbl); + sqfs_destroy(idtbl); out_dirwr: - sqfs_dir_writer_destroy(dirwr); + sqfs_destroy(dirwr); out_dm: - sqfs_meta_writer_destroy(dir_m); + sqfs_destroy(dir_m); out_im: - sqfs_meta_writer_destroy(inode_m); + sqfs_destroy(inode_m); out_cmp: - cmp->destroy(cmp); + sqfs_destroy(cmp); out_file: - file->destroy(file); + sqfs_destroy(file); return status; } diff --git a/extras/mknastyfs.c b/extras/mknastyfs.c index 2a66bc9..b11f8f9 100644 --- a/extras/mknastyfs.c +++ b/extras/mknastyfs.c @@ -168,16 +168,16 @@ int main(void) /* cleanup */ status = EXIT_SUCCESS; - sqfs_id_table_destroy(idtbl); + sqfs_destroy(idtbl); out_dirwr: - sqfs_dir_writer_destroy(dirwr); + sqfs_destroy(dirwr); out_dm: - sqfs_meta_writer_destroy(dir_m); + sqfs_destroy(dir_m); out_im: - sqfs_meta_writer_destroy(inode_m); + sqfs_destroy(inode_m); out_cmp: - cmp->destroy(cmp); + sqfs_destroy(cmp); out_file: - file->destroy(file); + sqfs_destroy(file); return status; } -- cgit v1.2.3