From: Mark Andrews Date: Thu, 13 Aug 2009 02:19:18 +0000 (+0000) Subject: 2646. [bug] Incorrect cleanup on error in socket.c. [RT #19987] X-Git-Tag: v9.5.2b1~12 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d028ae461b6df7d32946729b57da82f8903b2a3e;p=thirdparty%2Fbind9.git 2646. [bug] Incorrect cleanup on error in socket.c. [RT #19987] --- diff --git a/CHANGES b/CHANGES index 5316b03eca0..083cb437eab 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,5 @@ +2646. [bug] Incorrect cleanup on error in socket.c. [RT #19987] + 2645. [port] "gcc -m32" didn't work on amd64 and x86_64 platforms which default to 64 bits. [RT #19927] diff --git a/lib/isc/unix/socket.c b/lib/isc/unix/socket.c index ee4a279a1be..55b0d44bd21 100644 --- a/lib/isc/unix/socket.c +++ b/lib/isc/unix/socket.c @@ -15,7 +15,7 @@ * PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: socket.c,v 1.275.10.40 2009/04/18 01:30:34 jinmei Exp $ */ +/* $Id: socket.c,v 1.275.10.41 2009/08/13 02:19:18 marka Exp $ */ /*! \file */ @@ -3647,7 +3647,7 @@ setup_watcher(isc_mem_t *mctx, isc_socketmgr_t *manager) { manager->maxsocks); if (manager->fdpollinfo == NULL) { isc_mem_put(mctx, manager->events, - sizeof(pollinfo_t) * manager->maxsocks); + sizeof(struct pollfd) * manager->nevents); return (ISC_R_NOMEMORY); } memset(manager->fdpollinfo, 0, sizeof(pollinfo_t) * manager->maxsocks);