lib/tdb/common: Fix warning: Null pointer passed as argument to param
authorNoel Power <noel.power@suse.com>
Mon, 17 Jun 2019 15:54:32 +0000 (16:54 +0100)
committerNoel Power <npower@samba.org>
Mon, 1 Jul 2019 13:34:10 +0000 (13:34 +0000)
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

index 17e7ed85453ddb700890ca03b0f0bf34bac020ba..7e6580957bb6fe695ff69777b3426d3c652302ae 100644 (file)
@@ -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? */