From: Ilia Alshanetsky Date: Sun, 23 Oct 2005 15:29:38 +0000 (+0000) Subject: MFB51: Fixed memory leak on error. X-Git-Tag: RELEASE_0_9_1~36 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=6a271cc9c943e520566054d82724fcbab8eb69d3;p=php MFB51: Fixed memory leak on error. --- diff --git a/ext/standard/dns.c b/ext/standard/dns.c index e617ff4915..8ee27e0daf 100644 --- a/ext/standard/dns.c +++ b/ext/standard/dns.c @@ -358,7 +358,7 @@ PHP_MINIT_FUNCTION(dns) { #endif /* QFIXEDSZ */ #ifndef MAXHOSTNAMELEN -#define MAXHOSTNAMELEN 256 +#define MAXHOSTNAMELEN 1024 #endif /* MAXHOSTNAMELEN */ #ifndef MAXRESOURCERECORDS @@ -755,12 +755,14 @@ PHP_FUNCTION(dns_get_record) if (n<0) { php_error_docref(NULL TSRMLS_CC, E_WARNING, "res_nmkquery() failed"); zval_dtor(return_value); + res_nclose(&res); RETURN_FALSE; } n = res_nsend(&res, buf.qb2, n, answer.qb2, sizeof answer); if (n<0) { php_error_docref(NULL TSRMLS_CC, E_WARNING, "res_nsend() failed"); zval_dtor(return_value); + res_nclose(&res); RETURN_FALSE; } @@ -778,6 +780,7 @@ PHP_FUNCTION(dns_get_record) if (n < 0) { php_error_docref(NULL TSRMLS_CC, E_WARNING, "Unable to parse DNS data received"); zval_dtor(return_value); + res_nclose(&res); RETURN_FALSE; } cp += n + QFIXEDSZ;