aboutsummaryrefslogtreecommitdiff
path: root/qpkg.c
diff options
context:
space:
mode:
authorFabian Groffen <grobian@gentoo.org>2020-01-19 20:14:44 +0100
committerFabian Groffen <grobian@gentoo.org>2020-01-19 20:14:44 +0100
commit6ac211da306deccd42717e05ebf132f3da61e053 (patch)
tree488e3c490de18d54d982ff1fa1f7cbc827eb89d3 /qpkg.c
parentlibq/tree: fix Coverity 206542 Resource leak (diff)
downloadportage-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.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/qpkg.c b/qpkg.c
index 1eee7b1..419456c 100644
--- a/qpkg.c
+++ b/qpkg.c
@@ -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);