diff options
author | Ilia Alshanetsky <iliaa@php.net> | 2008-09-17 23:27:53 +0000 |
---|---|---|
committer | Ilia Alshanetsky <iliaa@php.net> | 2008-09-17 23:27:53 +0000 |
commit | 4732ab390cd7bf07a3cdb0ddff97bfef79e20a15 (patch) | |
tree | 3520095f2c002258c56c3ff6ff35d24451f2c0bd /ext/xmlwriter | |
parent | e46d3289345662c7c6b416e671a6c5c0a08a5ba6 (diff) | |
download | php-git-4732ab390cd7bf07a3cdb0ddff97bfef79e20a15.tar.gz |
Fixed bug #46110 (XMLWriter - openmemory() and openuri() leak memory on
multiple calls).
Diffstat (limited to 'ext/xmlwriter')
-rw-r--r-- | ext/xmlwriter/php_xmlwriter.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/ext/xmlwriter/php_xmlwriter.c b/ext/xmlwriter/php_xmlwriter.c index 309064eba5..58d7c60aff 100644 --- a/ext/xmlwriter/php_xmlwriter.c +++ b/ext/xmlwriter/php_xmlwriter.c @@ -1844,6 +1844,9 @@ static PHP_FUNCTION(xmlwriter_open_uri) intern->uri_output = out_buffer; #else if (this) { + if (ze_obj->xmlwriter_ptr) { + xmlwriter_free_resource_ptr(ze_obj->xmlwriter_ptr TSRMLS_CC); + } ze_obj->xmlwriter_ptr = intern; RETURN_TRUE; } else @@ -1894,6 +1897,9 @@ static PHP_FUNCTION(xmlwriter_open_memory) intern->uri_output = NULL; #else if (this) { + if (ze_obj->xmlwriter_ptr) { + xmlwriter_free_resource_ptr(ze_obj->xmlwriter_ptr TSRMLS_CC); + } ze_obj->xmlwriter_ptr = intern; RETURN_TRUE; } else |