From 456d53d1fb2cd32bef2cc5a0906d9c08e215389b Mon Sep 17 00:00:00 2001 From: Mark Andrews Date: Wed, 3 Feb 2021 16:38:29 +1100 Subject: [PATCH] Remove redundant 'version == NULL' check *** CID 318094: Null pointer dereferences (REVERSE_INULL) /lib/dns/rbtdb.c: 1389 in newversion() 1383 version->xfrsize = rbtdb->current_version->xfrsize; 1384 RWUNLOCK(&rbtdb->current_version->rwlock, isc_rwlocktype_read); 1385 rbtdb->next_serial++; 1386 rbtdb->future_version = version; 1387 RBTDB_UNLOCK(&rbtdb->lock, isc_rwlocktype_write); 1388 CID 318094: Null pointer dereferences (REVERSE_INULL) Null-checking "version" suggests that it may be null, but it has already been dereferenced on all paths leading to the check. 1389 if (version == NULL) { 1390 return (result); 1391 } 1392 1393 *versionp = version; 1394 --- lib/dns/rbtdb.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/lib/dns/rbtdb.c b/lib/dns/rbtdb.c index 98273507f5..2c2f9205bb 100644 --- a/lib/dns/rbtdb.c +++ b/lib/dns/rbtdb.c @@ -1347,7 +1347,6 @@ allocate_version(isc_mem_t *mctx, rbtdb_serial_t serial, static isc_result_t newversion(dns_db_t *db, dns_dbversion_t **versionp) { - isc_result_t result = ISC_R_SUCCESS; dns_rbtdb_t *rbtdb = (dns_rbtdb_t *)db; rbtdb_version_t *version; @@ -1386,10 +1385,6 @@ newversion(dns_db_t *db, dns_dbversion_t **versionp) { rbtdb->future_version = version; RBTDB_UNLOCK(&rbtdb->lock, isc_rwlocktype_write); - if (version == NULL) { - return (result); - } - *versionp = version; return (ISC_R_SUCCESS);