diff options
author | Fabian Groffen <grobian@gentoo.org> | 2020-01-19 20:14:44 +0100 |
---|---|---|
committer | Fabian Groffen <grobian@gentoo.org> | 2020-01-19 20:14:44 +0100 |
commit | 6ac211da306deccd42717e05ebf132f3da61e053 (patch) | |
tree | 488e3c490de18d54d982ff1fa1f7cbc827eb89d3 /qpkg.c | |
parent | libq/tree: fix Coverity 206542 Resource leak (diff) | |
download | portage-utils-6ac211da306deccd42717e05ebf132f3da61e053.tar.gz portage-utils-6ac211da306deccd42717e05ebf132f3da61e053.tar.bz2 portage-utils-6ac211da306deccd42717e05ebf132f3da61e053.zip |
qpkg: fix Coverity 206541 Explicit null dereference
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
Diffstat (limited to 'qpkg.c')
-rw-r--r-- | qpkg.c | 16 |
1 files changed, 9 insertions, 7 deletions
@@ -96,14 +96,16 @@ qpkg_clean(char *dirp) } } - /* check which binpkgs exist in the known_pkgs (vdb or trees), such - * that the remainder is what we would clean */ - array_for_each(bins, n, binatomstr) { - if (contains_set(binatomstr, known_pkgs)) - xarraydelete_ptr(bins, n--); - } + if (known_pkgs != NULL) { + /* check which binpkgs exist in the known_pkgs (vdb or trees), such + * that the remainder is what we would clean */ + array_for_each(bins, n, binatomstr) { + if (contains_set(binatomstr, known_pkgs)) + xarraydelete_ptr(bins, n--); + } - free_set(known_pkgs); + free_set(known_pkgs); + } array_for_each(bins, n, binatomstr) { snprintf(buf, sizeof(buf), "%s/%s.tbz2", dirp, binatomstr); |