From: Josef 'Jeff' Sipek Date: Fri, 11 Dec 2015 22:15:52 +0000 (-0500) Subject: devpollmplexer is leaky X-Git-Tag: rec-3.7.4~7^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F3026%2Fhead;p=thirdparty%2Fpdns.git devpollmplexer is leaky --- diff --git a/pdns/devpollmplexer.cc b/pdns/devpollmplexer.cc index a4774b9ad9..490383e6e8 100644 --- a/pdns/devpollmplexer.cc +++ b/pdns/devpollmplexer.cc @@ -102,11 +102,15 @@ int DevPollFDMultiplexer::run(struct timeval* now) int ret=ioctl(d_devpollfd, DP_POLL, &dvp); gettimeofday(now,0); // MANDATORY! - if(ret < 0 && errno!=EINTR) + if(ret < 0 && errno!=EINTR) { + delete[] dvp.dp_fds; throw FDMultiplexerException("/dev/poll returned error: "+stringerror()); + } - if(ret < 1) // thanks AB! + if(ret < 1) { // thanks AB! + delete[] dvp.dp_fds; return 0; + } d_inrun=true; for(int n=0; n < ret; ++n) {