]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Address use before NULL check warning of uvreq
authorMark Andrews <marka@isc.org>
Tue, 28 Sep 2021 00:08:26 +0000 (10:08 +1000)
committerMark Andrews <marka@isc.org>
Wed, 29 Sep 2021 01:43:14 +0000 (11:43 +1000)
move dereference of uvreq until the after NULL check.

(cherry picked from commit 7079829b84c992413dcf26b691b64147352fc0d9)

lib/isc/netmgr/netmgr.c

index a1e64ef2046a0a0b5f77dc8bfdebdfb4ba87210a..3283eb6e4f44326be9dc24cb2ad9ed5cb77983b6 100644 (file)
@@ -2585,8 +2585,7 @@ isc__nm_async_readcb(isc__networker_t *worker, isc__netievent_t *ev0) {
        isc_nmsocket_t *sock = ievent->sock;
        isc__nm_uvreq_t *uvreq = ievent->req;
        isc_result_t eresult = ievent->result;
-       isc_region_t region = { .base = (unsigned char *)uvreq->uvbuf.base,
-                               .length = uvreq->uvbuf.len };
+       isc_region_t region;
 
        UNUSED(worker);
 
@@ -2595,6 +2594,9 @@ isc__nm_async_readcb(isc__networker_t *worker, isc__netievent_t *ev0) {
        REQUIRE(VALID_NMHANDLE(uvreq->handle));
        REQUIRE(sock->tid == isc_nm_tid());
 
+       region.base = (unsigned char *)uvreq->uvbuf.base;
+       region.length = uvreq->uvbuf.len;
+
        uvreq->cb.recv(uvreq->handle, eresult, &region, uvreq->cbarg);
 
        isc__nm_uvreq_put(&uvreq, sock);