From: Mark Andrews Date: Wed, 5 Feb 2020 05:49:09 +0000 (+1100) Subject: 'dir_list' must be non NULL, remove test. X-Git-Tag: v9.16.0~29^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bf7a99a3c1c1d9d355d37a14f15390f4d2be80f5;p=thirdparty%2Fbind9.git 'dir_list' must be non NULL, remove test. 707 complete_allnds: CID 1452689 (#1 of 1): Dereference before null check (REVERSE_INULL) check_after_deref: Null-checking dir_list suggests that it may be null, but it has already been dereferenced on all paths leading to the check. 708 if (dir_list != NULL) { 709 /* clean up entries from list. */ --- diff --git a/contrib/dlz/drivers/dlz_filesystem_driver.c b/contrib/dlz/drivers/dlz_filesystem_driver.c index 05ce2ef8c45..a3fe98dd67e 100644 --- a/contrib/dlz/drivers/dlz_filesystem_driver.c +++ b/contrib/dlz/drivers/dlz_filesystem_driver.c @@ -688,19 +688,18 @@ fs_allnodes(const char *zone, void *driverarg, void *dbdata, } /* end while */ complete_allnds: - if (dir_list != NULL) { - /* clean up entries from list. */ - dir_entry = ISC_LIST_HEAD(*dir_list); - while (dir_entry != NULL) { - next_de = ISC_LIST_NEXT(dir_entry, link); - isc_mem_put(named_g_mctx, dir_entry, sizeof(dir_entry_t)); - dir_entry = next_de; - } /* end while */ - isc_mem_put(named_g_mctx, dir_list, sizeof(dlist_t)); - } + /* clean up entries from list. */ + dir_entry = ISC_LIST_HEAD(*dir_list); + while (dir_entry != NULL) { + next_de = ISC_LIST_NEXT(dir_entry, link); + isc_mem_put(named_g_mctx, dir_entry, sizeof(dir_entry_t)); + dir_entry = next_de; + } /* end while */ + isc_mem_put(named_g_mctx, dir_list, sizeof(dlist_t)); - if (basepath != NULL) + if (basepath != NULL) { isc_mem_free(named_g_mctx, basepath); + } return (result); }