From 848290d37fdb381b43db12675e771b462eefe7ef Mon Sep 17 00:00:00 2001 From: Noel Power <noel.power@suse.com> Date: Mon, 17 Jun 2019 16:54:32 +0100 Subject: [PATCH] lib/tdb/common: Fix warning: Null pointer passed as argument to param Fixes: lib/tdb/common/rescue.c:299:2: warning: Null pointer passed as an argument to a 'nonnull' parameter <--[clang] qsort(found.arr, found.num, sizeof(found.arr[0]), cmp_key); ^ ~~~~~~~~~ Signed-off-by: Noel Power <noel.power@suse.com> Reviewed-by: Gary Lockyer <gary@catalyst.net.nz> --- lib/tdb/common/rescue.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/tdb/common/rescue.c b/lib/tdb/common/rescue.c index 17e7ed85453..7e6580957bb 100644 --- a/lib/tdb/common/rescue.c +++ b/lib/tdb/common/rescue.c @@ -296,9 +296,11 @@ _PUBLIC_ int tdb_rescue(struct tdb_context *tdb, } /* Now sort by key! */ - qsort(found.arr, found.num, sizeof(found.arr[0]), cmp_key); + if (found.arr != NULL) { + qsort(found.arr, found.num, sizeof(found.arr[0]), cmp_key); + } - for (i = 0; i < found.num; ) { + for (i = 0; found.arr && i < found.num; ) { unsigned int num, num_in_hash = 0; /* How many are identical? */