From: Michael Wallner Date: Tue, 4 Apr 2017 11:35:18 +0000 (+0200) Subject: Fixed issue #63 X-Git-Tag: RELEASE_3_1_1_RC1~5 X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=commitdiff_plain;h=92ad5930af4f657a3f863ad765dd3fa3f75aa0e4 Fixed issue #63 Use urldecode instead of raw_urldecode in http_params --- diff --git a/src/php_http_params.c b/src/php_http_params.c index 92cc558..3ec71b1 100644 --- a/src/php_http_params.c +++ b/src/php_http_params.c @@ -118,7 +118,7 @@ static inline void prepare_escaped(zval *zv) static inline void sanitize_urlencoded(zval *zv) { - Z_STRLEN_P(zv) = php_raw_url_decode(Z_STRVAL_P(zv), Z_STRLEN_P(zv)); + Z_STRLEN_P(zv) = php_url_decode(Z_STRVAL_P(zv), Z_STRLEN_P(zv)); } static inline void prepare_urlencoded(zval *zv) diff --git a/tests/gh-issue63.phpt b/tests/gh-issue63.phpt new file mode 100644 index 0000000..e03b32f --- /dev/null +++ b/tests/gh-issue63.phpt @@ -0,0 +1,27 @@ +--TEST-- +segfault with Client::setDebug and Client::dequeue() +--SKIPIF-- + +--FILE-- + 'bar']; +$parts['query'] = new QueryString($query); +echo (new Url($url, null, Url::STDFLAGS))->mod($parts)->toString(); + +?> + +===DONE=== +--EXPECTF-- +Test +http://example.com/?param=has%20spaces&foo=bar +===DONE===