diff options
author | Christoph M. Becker <cmb@php.net> | 2015-09-05 14:43:19 +0200 |
---|---|---|
committer | Christoph M. Becker <cmb@php.net> | 2015-09-05 14:43:19 +0200 |
commit | cc9da62bdb815421151958e8f2971d992291192a (patch) | |
tree | d77c1040bed9c3e2bcbd609e245f6c02fd513417 /sapi/cli | |
parent | 403974f4dc762cf0c5f1ac09009fff13543e099c (diff) | |
parent | aed225b7e4d711d7c2cbf45f59e5f66929debb94 (diff) | |
download | php-git-cc9da62bdb815421151958e8f2971d992291192a.tar.gz |
Merge branch 'PHP-5.6'
* PHP-5.6:
Fix #68291: 404 on urls with '+'
Resolved conflicts:
sapi/cli/php_cli_server.c
Diffstat (limited to 'sapi/cli')
-rw-r--r-- | sapi/cli/php_cli_server.c | 4 | ||||
-rw-r--r-- | sapi/cli/tests/bug68291.phpt | 21 |
2 files changed, 23 insertions, 2 deletions
diff --git a/sapi/cli/php_cli_server.c b/sapi/cli/php_cli_server.c index 709154da70..529f5633bf 100644 --- a/sapi/cli/php_cli_server.c +++ b/sapi/cli/php_cli_server.c @@ -94,7 +94,7 @@ #include "ext/standard/file.h" /* for php_set_sock_blocking() :-( */ #include "zend_smart_str.h" #include "ext/standard/html.h" -#include "ext/standard/url.h" /* for php_url_decode() */ +#include "ext/standard/url.h" /* for php_raw_url_decode() */ #include "ext/standard/php_string.h" /* for php_dirname() */ #include "php_network.h" @@ -1467,7 +1467,7 @@ static void normalize_vpath(char **retval, size_t *retval_len, const char *vpath return; } - decoded_vpath_end = decoded_vpath + php_url_decode(decoded_vpath, (int)vpath_len); + decoded_vpath_end = decoded_vpath + php_raw_url_decode(decoded_vpath, (int)vpath_len); #ifdef PHP_WIN32 { diff --git a/sapi/cli/tests/bug68291.phpt b/sapi/cli/tests/bug68291.phpt new file mode 100644 index 0000000000..62042307c5 --- /dev/null +++ b/sapi/cli/tests/bug68291.phpt @@ -0,0 +1,21 @@ +--TEST-- +Bug #68291 (404 on urls with '+') +--INI-- +allow_url_fopen=1 +--SKIPIF-- +<?php +include "skipif.inc"; +?> +--FILE-- +<?php +include "php_cli_server.inc"; +file_put_contents(__DIR__ . '/bug68291+test.html', 'Found'); +php_cli_server_start(NULL, NULL); +echo file_get_contents('http://' . PHP_CLI_SERVER_ADDRESS . '/bug68291+test.html'); +?> +--CLEAN-- +<?php +@unlink(__DIR__ . '/bug68291+test.html'); +?> +--EXPECT-- +Found |