]> git.ipfire.org Git - pakfire.git/commitdiff
libpakfire: Correctly reference pool in packages
authorMichael Tremer <michael.tremer@ipfire.org>
Sun, 14 Jan 2018 16:50:32 +0000 (17:50 +0100)
committerMichael Tremer <michael.tremer@ipfire.org>
Sun, 14 Jan 2018 16:50:32 +0000 (17:50 +0100)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/libpakfire/package.c

index 1c2db75279d439b27c6672215bf818c97a7d4dc2..bac7953805d21f35650d2d78b436a4db45580345 100644 (file)
@@ -70,9 +70,8 @@ static void pakfire_package_add_self_provides(PakfirePool pool, PakfirePackage p
 
 PAKFIRE_EXPORT PakfirePackage pakfire_package_create(PakfirePool pool, Id id) {
        PakfirePackage pkg = pakfire_calloc(1, sizeof(*pkg));
-
        if (pkg) {
-               pkg->pool = pool;
+               pkg->pool = pakfire_pool_ref(pool);
                pkg->id = id;
 
                // Initialize reference counter
@@ -98,6 +97,7 @@ PAKFIRE_EXPORT void pakfire_package_free(PakfirePackage pkg) {
        if (--pkg->nrefs > 0)
                return;
 
+       pakfire_pool_unref(pkg->pool);
        pakfire_package_filelist_remove(pkg);
        pakfire_free(pkg);
 }