diff options
author | Nikita Popov <nikic@php.net> | 2012-02-18 14:58:19 +0000 |
---|---|---|
committer | Nikita Popov <nikic@php.net> | 2012-02-18 14:58:19 +0000 |
commit | 957029f44aabc4d297ea42c2757de5ef809c61d5 (patch) | |
tree | d8de654e534ceb2d7e1db3d967b195e7aae5109a /ext/xmlrpc/xmlrpc-epi-php.c | |
parent | 032bbc3164c0c8302046e3a9029234528e9ad324 (diff) | |
download | php-git-957029f44aabc4d297ea42c2757de5ef809c61d5.tar.gz |
Fix bug #61097 Memory leak in xmlrpc functions copying zvals
Needs to be merged to 5.4.
Diffstat (limited to 'ext/xmlrpc/xmlrpc-epi-php.c')
-rw-r--r-- | ext/xmlrpc/xmlrpc-epi-php.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/ext/xmlrpc/xmlrpc-epi-php.c b/ext/xmlrpc/xmlrpc-epi-php.c index 7fb97d21e1..13886c7537 100644 --- a/ext/xmlrpc/xmlrpc-epi-php.c +++ b/ext/xmlrpc/xmlrpc-epi-php.c @@ -1043,9 +1043,8 @@ PHP_FUNCTION(xmlrpc_server_register_method) */ if (XMLRPC_ServerRegisterMethod(server->server_ptr, method_key, php_xmlrpc_callback)) { /* save for later use */ - MAKE_STD_ZVAL(method_name_save); - *method_name_save = **method_name; - zval_copy_ctor(method_name_save); + ALLOC_ZVAL(method_name_save); + MAKE_COPY_ZVAL(method_name, method_name_save); /* register our php method */ add_zval(server->method_map, method_key, &method_name_save); @@ -1073,9 +1072,8 @@ PHP_FUNCTION(xmlrpc_server_register_introspection_callback) if (type == le_xmlrpc_server) { /* save for later use */ - MAKE_STD_ZVAL(method_name_save); - *method_name_save = **method_name; - zval_copy_ctor(method_name_save); + ALLOC_ZVAL(method_name_save); + MAKE_COPY_ZVAL(method_name, method_name_save); /* register our php method */ add_zval(server->introspection_map, NULL, &method_name_save); |