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? */