From: Kalle Sommer Nielsen Date: Mon, 13 Dec 2010 09:52:05 +0000 (+0000) Subject: Fixed bug #53493 (xmlrpc_decode should not be sensitive to leading whitespace) X-Git-Tag: php-5.4.0alpha1~191^2~513 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=1081bd1528982d7bea4af0722c932b0af4f0d18a;p=php Fixed bug #53493 (xmlrpc_decode should not be sensitive to leading whitespace) --- diff --git a/ext/xmlrpc/tests/bug53493.phpt b/ext/xmlrpc/tests/bug53493.phpt new file mode 100644 index 0000000000..29309241f8 --- /dev/null +++ b/ext/xmlrpc/tests/bug53493.phpt @@ -0,0 +1,15 @@ +--TEST-- +Bug #53493 (xmlrpc_decode should not be sensitive to leading whitespace) +--FILE-- +' . + 'Hello World' . + ''; + +var_dump(xmlrpc_decode($req)); +echo "Done\n"; +?> +--EXPECT-- +string(11) "Hello World" +Done diff --git a/ext/xmlrpc/xmlrpc-epi-php.c b/ext/xmlrpc/xmlrpc-epi-php.c index 823b8eb3a2..8c0ec6c86f 100644 --- a/ext/xmlrpc/xmlrpc-epi-php.c +++ b/ext/xmlrpc/xmlrpc-epi-php.c @@ -67,6 +67,7 @@ #include "php.h" #include "ext/standard/info.h" +#include "ext/standard/php_string.h" #include "ext/date/php_date.h" #include "php_ini.h" #include "php_xmlrpc.h" @@ -844,7 +845,10 @@ PHP_FUNCTION(xmlrpc_decode) } if (return_value_used) { - zval* retval = decode_request_worker(arg1, arg1_len, arg2_len ? arg2 : NULL, NULL); + zval* retval; + char *trimmed = php_trim(arg1, arg1_len, NULL, 0, NULL, 1 TSRMLS_CC); + + retval = decode_request_worker(trimmed, strlen(trimmed), arg2_len ? arg2 : NULL, NULL); if (retval) { *return_value = *retval; FREE_ZVAL(retval);