svn: /php/php-src/ branches/PHP_5_3/NEWS branches/PHP_5_3/ext/xmlrpc/tests/bug61264.phpt branches/PHP_5_3/ext/xmlrpc/xmlrpc-epi-php.c
branches/PHP_5_4/NEWS branches/PHP_5_4/ext/xmlrpc/tests/bug61264.phpt branches/PHP_5_4/ext/xmlrpc/xmlrpc-epi-php.c
trunk/ext/xmlrpc/tests/bug61264.phpt trunk/ext/xmlrpc/xmlrpc-epi-php.c
| From: | Nikita Popov | Date: | Sat, 03 Mar 2012 12:46:17 +0000 |
| Subject: | svn: /php/php-src/ branches/PHP_5_3/NEWS branches/PHP_5_3/ext/xmlrpc/tests/bug61264.phpt branches/PHP_5_3/ext/xmlrpc/xmlrpc-epi-php.c branches/PHP_5_4/NEWS branches/PHP_5_4/ext/xmlrpc/tests/bug61264.phpt branches/PHP_5_4/ext/xmlrpc/xmlrpc-epi-php.c trunk/ext/xmlrpc/tests/bug61264.phpt trunk/ext/xmlrpc/xmlrpc-epi-php.c |
||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-67809@lists.php.net to get a copy of this message | ||
nikic Sat, 03 Mar 2012 12:46:17 +0000
Revision: http://svn.php.net/viewvc?view=revision&revision=323850
Log:
Fix bug #61264: xmlrpc_parse_method_descriptions leaks temporary variable
Bug: https://bugs.php.net/61264 (Open)
xmlrpc_parse_method_descriptions leaks temporary variable
Changed paths:
U php/php-src/branches/PHP_5_3/NEWS
A php/php-src/branches/PHP_5_3/ext/xmlrpc/tests/bug61264.phpt
U php/php-src/branches/PHP_5_3/ext/xmlrpc/xmlrpc-epi-php.c
U php/php-src/branches/PHP_5_4/NEWS
A php/php-src/branches/PHP_5_4/ext/xmlrpc/tests/bug61264.phpt
U php/php-src/branches/PHP_5_4/ext/xmlrpc/xmlrpc-epi-php.c
A php/php-src/trunk/ext/xmlrpc/tests/bug61264.phpt
U php/php-src/trunk/ext/xmlrpc/xmlrpc-epi-php.c
Modified: php/php-src/branches/PHP_5_3/NEWS
===================================================================
--- php/php-src/branches/PHP_5_3/NEWS 2012-03-02 23:07:19 UTC (rev 323849)
+++ php/php-src/branches/PHP_5_3/NEWS 2012-03-03 12:46:17 UTC (rev 323850)
@@ -73,6 +73,7 @@
- XMLRPC:
. Fixed bug #61097 (Memory leak in xmlrpc functions copying zvals). (Nikic)
+ . Fixed bug #61264 (xmlrpc_parse_method_descriptions leaks temporary variable). (Nikita Popov)
- Zlib:
. Fixed bug #61139 (gzopen leaks when specifying invalid mode). (Nikic)
Added: php/php-src/branches/PHP_5_3/ext/xmlrpc/tests/bug61264.phpt
===================================================================
--- php/php-src/branches/PHP_5_3/ext/xmlrpc/tests/bug61264.phpt (rev 0)
+++ php/php-src/branches/PHP_5_3/ext/xmlrpc/tests/bug61264.phpt 2012-03-03 12:46:17 UTC (rev 323850)
@@ -0,0 +1,17 @@
+--TEST--
+Bug #61264: xmlrpc_parse_method_descriptions leaks temporary variable
+--FILE--
+<?php
+$xml = <<<XML
+<?xml version="1.0" encoding="utf-8"?>
+<a>
+ <b>foo</b>
+</a>
+XML;
+var_dump(xmlrpc_parse_method_descriptions($xml));
+?>
+--EXPECT--
+array(1) {
+ ["b"]=>
+ string(3) "foo"
+}
Modified: php/php-src/branches/PHP_5_3/ext/xmlrpc/xmlrpc-epi-php.c
===================================================================
--- php/php-src/branches/PHP_5_3/ext/xmlrpc/xmlrpc-epi-php.c 2012-03-02 23:07:19 UTC (rev 323849)
+++ php/php-src/branches/PHP_5_3/ext/xmlrpc/xmlrpc-epi-php.c 2012-03-03 12:46:17 UTC (rev 323850)
@@ -1240,8 +1240,7 @@
retval = XMLRPC_to_PHP(xVal);
if (retval) {
- *return_value = *retval;
- zval_copy_ctor(return_value);
+ RETVAL_ZVAL(retval, 1, 1);
}
/* dust, sweep, and mop */
XMLRPC_CleanupValue(xVal);
Modified: php/php-src/branches/PHP_5_4/NEWS
===================================================================
--- php/php-src/branches/PHP_5_4/NEWS 2012-03-02 23:07:19 UTC (rev 323849)
+++ php/php-src/branches/PHP_5_4/NEWS 2012-03-03 12:46:17 UTC (rev 323850)
@@ -48,6 +48,7 @@
- XMLRPC:
. Fixed bug #61097 (Memory leak in xmlrpc functions copying zvals). (Nikita Popov)
+ . Fixed bug #61264 (xmlrpc_parse_method_descriptions leaks temporary variable). (Nikita Popov)
- Zlib:
. Fixed bug #61139 (gzopen leaks when specifying invalid mode). (Nikita Popov)
Added: php/php-src/branches/PHP_5_4/ext/xmlrpc/tests/bug61264.phpt
===================================================================
--- php/php-src/branches/PHP_5_4/ext/xmlrpc/tests/bug61264.phpt (rev 0)
+++ php/php-src/branches/PHP_5_4/ext/xmlrpc/tests/bug61264.phpt 2012-03-03 12:46:17 UTC (rev 323850)
@@ -0,0 +1,17 @@
+--TEST--
+Bug #61264: xmlrpc_parse_method_descriptions leaks temporary variable
+--FILE--
+<?php
+$xml = <<<XML
+<?xml version="1.0" encoding="utf-8"?>
+<a>
+ <b>foo</b>
+</a>
+XML;
+var_dump(xmlrpc_parse_method_descriptions($xml));
+?>
+--EXPECT--
+array(1) {
+ ["b"]=>
+ string(3) "foo"
+}
Modified: php/php-src/branches/PHP_5_4/ext/xmlrpc/xmlrpc-epi-php.c
===================================================================
--- php/php-src/branches/PHP_5_4/ext/xmlrpc/xmlrpc-epi-php.c 2012-03-02 23:07:19 UTC (rev 323849)
+++ php/php-src/branches/PHP_5_4/ext/xmlrpc/xmlrpc-epi-php.c 2012-03-03 12:46:17 UTC (rev 323850)
@@ -1240,8 +1240,7 @@
retval = XMLRPC_to_PHP(xVal);
if (retval) {
- *return_value = *retval;
- zval_copy_ctor(return_value);
+ RETVAL_ZVAL(retval, 1, 1);
}
/* dust, sweep, and mop */
XMLRPC_CleanupValue(xVal);
Added: php/php-src/trunk/ext/xmlrpc/tests/bug61264.phpt
===================================================================
--- php/php-src/trunk/ext/xmlrpc/tests/bug61264.phpt (rev 0)
+++ php/php-src/trunk/ext/xmlrpc/tests/bug61264.phpt 2012-03-03 12:46:17 UTC (rev 323850)
@@ -0,0 +1,17 @@
+--TEST--
+Bug #61264: xmlrpc_parse_method_descriptions leaks temporary variable
+--FILE--
+<?php
+$xml = <<<XML
+<?xml version="1.0" encoding="utf-8"?>
+<a>
+ <b>foo</b>
+</a>
+XML;
+var_dump(xmlrpc_parse_method_descriptions($xml));
+?>
+--EXPECT--
+array(1) {
+ ["b"]=>
+ string(3) "foo"
+}
Modified: php/php-src/trunk/ext/xmlrpc/xmlrpc-epi-php.c
===================================================================
--- php/php-src/trunk/ext/xmlrpc/xmlrpc-epi-php.c 2012-03-02 23:07:19 UTC (rev 323849)
+++ php/php-src/trunk/ext/xmlrpc/xmlrpc-epi-php.c 2012-03-03 12:46:17 UTC (rev 323850)
@@ -1240,8 +1240,7 @@
retval = XMLRPC_to_PHP(xVal);
if (retval) {
- *return_value = *retval;
- zval_copy_ctor(return_value);
+ RETVAL_ZVAL(retval, 1, 1);
}
/* dust, sweep, and mop */
XMLRPC_CleanupValue(xVal);