diff options
author | Christoph M. Becker <cmbecker69@gmx.de> | 2018-08-04 12:57:05 +0200 |
---|---|---|
committer | Christoph M. Becker <cmbecker69@gmx.de> | 2018-08-04 12:57:05 +0200 |
commit | db8bcdba80530e68808ca588f6bfea79957dc80e (patch) | |
tree | 2663f25eebaea56477c12c8533fb4830d45deaa0 | |
parent | ffae3fb25d288c828a79334d663f146bed0505ea (diff) | |
parent | c00f5e6531a3f72bb8f7c107d2c390fadad736a0 (diff) | |
download | php-git-db8bcdba80530e68808ca588f6bfea79957dc80e.tar.gz |
Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
Fix #76704: mb_detect_order return value varies based on argument type
-rw-r--r-- | NEWS | 3 | ||||
-rw-r--r-- | ext/mbstring/mbstring.c | 8 | ||||
-rw-r--r-- | ext/mbstring/tests/bug76704.phpt | 16 |
3 files changed, 23 insertions, 4 deletions
@@ -2,6 +2,9 @@ PHP NEWS ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ?? ??? 2018, PHP 7.2.10 +- mbstring: + . Fixed bug #76704 (mb_detect_order return value varies based on argument + type). (cmb) 16 Aug 2018, PHP 7.2.9 diff --git a/ext/mbstring/mbstring.c b/ext/mbstring/mbstring.c index 3a9e51781a..2ec7f1a3a8 100644 --- a/ext/mbstring/mbstring.c +++ b/ext/mbstring/mbstring.c @@ -702,7 +702,7 @@ static sapi_post_entry mbstr_post_entries[] = { /* }}} */ /* {{{ static int php_mb_parse_encoding_list() - * Return 0 if input contains any illegal encoding, otherwise 1. + * Return FAILURE if input contains any illegal encoding, otherwise SUCCESS. * Even if any illegal encoding is detected the result may contain a list * of parsed encodings. */ @@ -779,7 +779,7 @@ php_mb_parse_encoding_list(const char *value, size_t value_length, const mbfl_en *entry++ = encoding; n++; } else { - ret = 0; + ret = FAILURE; } } p1 = p2 + 1; @@ -795,7 +795,7 @@ php_mb_parse_encoding_list(const char *value, size_t value_length, const mbfl_en if (return_list) { *return_list = NULL; } - ret = 0; + ret = FAILURE; } if (return_size) { *return_size = n; @@ -808,7 +808,7 @@ php_mb_parse_encoding_list(const char *value, size_t value_length, const mbfl_en /* }}} */ /* {{{ static int php_mb_parse_encoding_array() - * Return 0 if input contains any illegal encoding, otherwise 1. + * Return FAILURE if input contains any illegal encoding, otherwise SUCCESS. * Even if any illegal encoding is detected the result may contain a list * of parsed encodings. */ diff --git a/ext/mbstring/tests/bug76704.phpt b/ext/mbstring/tests/bug76704.phpt new file mode 100644 index 0000000000..502f7e3ef6 --- /dev/null +++ b/ext/mbstring/tests/bug76704.phpt @@ -0,0 +1,16 @@ +--TEST-- +Bug #76704 (mb_detect_order return value varies based on argument type) +--SKIPIF-- +<?php +if (!extension_loaded('mbstring')) die('skip mbstring extension not available'); +?> +--FILE-- +<?php +var_dump(mb_detect_order('Foo, UTF-8')); +var_dump(mb_detect_order(['Foo', 'UTF-8'])) +?> +===DONE=== +--EXPECT-- +bool(false) +bool(false) +===DONE=== |