]> git.ipfire.org Git - pakfire.git/commitdiff
packager: Drop using own filelist
authorMichael Tremer <michael.tremer@ipfire.org>
Fri, 21 May 2021 19:01:45 +0000 (19:01 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Fri, 21 May 2021 19:01:45 +0000 (19:01 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/libpakfire/packager.c

index ac25f08283a6c42273e3c0cfd40110b56ba2747e..fcc730e6cd14adf192730a72e1b641549dc6c7b2 100644 (file)
@@ -32,8 +32,6 @@
 
 #include <pakfire/archive.h>
 #include <pakfire/constants.h>
-#include <pakfire/file.h>
-#include <pakfire/filelist.h>
 #include <pakfire/logging.h>
 #include <pakfire/package.h>
 #include <pakfire/packager.h>
@@ -51,7 +49,6 @@ struct pakfire_packager {
        time_t time_created;
 
        PakfirePackage pkg;
-       PakfireFilelist filelist;
 
        // Reader
        struct archive* reader;
@@ -61,6 +58,7 @@ struct pakfire_packager {
        FILE* fpayload;
        struct archive* mtree;
        FILE* fmtree;
+       size_t installsize;
 };
 
 static int pakfire_packager_create_payload(struct pakfire_packager* p) {
@@ -211,7 +209,6 @@ static void pakfire_packager_free(struct pakfire_packager* packager) {
        if (packager->reader)
                archive_read_free(packager->reader);
 
-       pakfire_filelist_unref(packager->filelist);
        pakfire_package_unref(packager->pkg);
        pakfire_unref(packager->pakfire);
 }
@@ -222,6 +219,8 @@ PAKFIRE_EXPORT int pakfire_packager_create(struct pakfire_packager** packager,
        if (!p)
                return ENOMEM;
 
+       int r = 1;
+
        // Save creation time
        p->time_created = time(NULL);
 
@@ -234,11 +233,6 @@ PAKFIRE_EXPORT int pakfire_packager_create(struct pakfire_packager** packager,
        // Store a reference to the package
        p->pkg = pakfire_package_ref(pkg);
 
-       // Create a new filelist
-       int r = pakfire_filelist_create(&p->filelist, p->pakfire);
-       if (r)
-               goto ERROR;
-
        // Create reader
        p->reader = pakfire_make_archive_disk_reader(p->pakfire, 1);
        if (!p->reader)
@@ -659,8 +653,7 @@ PAKFIRE_EXPORT int pakfire_packager_finish(struct pakfire_packager* packager, FI
        int r = 1;
 
        // Store total instal size
-       pakfire_package_set_installsize(packager->pkg,
-               pakfire_filelist_total_filesize(packager->filelist));
+       pakfire_package_set_installsize(packager->pkg, packager->installsize);
 
        // Open a new archive
        struct archive* a = archive_write_new();
@@ -786,25 +779,13 @@ PAKFIRE_EXPORT int pakfire_packager_add(struct pakfire_packager* packager,
                goto ERROR;
        }
 
-       // Create a file
-       PakfireFile file;
-       r = pakfire_file_create(&file, packager->pakfire);
-       if (r)
-               goto ERROR;
-
-       r = pakfire_file_copy_archive_entry(file, entry);
-       if (r)
-               goto ERROR;
-
-       // Append the file to the filelist
-       pakfire_filelist_append(packager->filelist, file);
+       // Increment installsize
+       packager->installsize += archive_entry_size(entry);
 
        // Successful
        r = 0;
 
 ERROR:
-       pakfire_file_unref(file);
-
        if (entry)
                archive_entry_free(entry);