Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=pacman-g2.git;a=commitdiff;h=429a1789eb7b97364be1a46f7cf6cc5f14e69ec5
commit 429a1789eb7b97364be1a46f7cf6cc5f14e69ec5 Author: Michel Hermier <[email protected]> Date: Mon Nov 24 08:23:37 2014 +0100 libpacman: Fix invalid pointer when invoking: pacman-g2 -Ql -p <pkgfile>. diff --git a/lib/libpacman/pacman.cpp b/lib/libpacman/pacman.cpp index d44abd9..5316b7e 100644 --- a/lib/libpacman/pacman.cpp +++ b/lib/libpacman/pacman.cpp @@ -850,7 +850,11 @@ pmpkg_t *pacman_pkg_load(char *filename) /* Sanity checks */ ASSERT(!_pacman_strempty(filename), RET_ERR(PM_ERR_WRONG_ARGS, NULL)); - return c_cast(_pacman_fpmpackage_load(filename)); + package_ptr pkg = _pacman_fpmpackage_load(filename); + if (pkg != nullptr) { + pkg->acquire(); + } + return c_cast(pkg); } /** Free a package. @@ -866,6 +870,7 @@ int pacman_pkg_free(pmpkg_t *_pkg) ASSERT(pkg != NULL, RET_ERR(PM_ERR_WRONG_ARGS, -1)); /* Only free packages loaded in user space */ + pkg->release(); return 0; } _______________________________________________ Frugalware-git mailing list [email protected] http://frugalware.org/mailman/listinfo/frugalware-git
