From: Nikita Popov Date: Wed, 13 Jul 2016 19:46:52 +0000 (+0200) Subject: Merge branch 'PHP-5.6' into PHP-7.0 X-Git-Tag: php-7.1.0beta1~72^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=57c998361957fec8a58b4ea6a9bc49887395db93;p=php Merge branch 'PHP-5.6' into PHP-7.0 Conflicts: ext/reflection/php_reflection.c --- 57c998361957fec8a58b4ea6a9bc49887395db93 diff --cc NEWS index ccb16ae76a,2af5a21c5d..500d2abb7d --- a/NEWS +++ b/NEWS @@@ -30,48 -27,28 +30,52 @@@ PH . Partially fixed #72506 (idn_to_ascii for UTS #46 incorrect for long domain names). (cmb) +- Opcache: + . Fixed bug #72590 (Opcache restart with kill_all_lockers does not work). + (Keyur) + - PDO_pgsql: . Fixed bug #70313 (PDO statement fails to throw exception). (Matteo) + . Fixed bug #72570 (Segmentation fault when binding parameters on a query + without placeholders). (Matteo) + ++- Reflection: ++ . Fixed bug #72222 (ReflectionClass::export doesn't handle array constants). ++ (Nikita Nefedov) ++ +- SimpleXML: + . Fixed bug #72588 (Using global var doesn't work while accessing SimpleXML + element). (Laruence) - SPL: - . Fixed bug #72122 (IteratorIterator breaks '@' error suppression). (kinglozzer) + . Fixed bug #55701 (GlobIterator throws LogicException). (Valentin VĂLCIU) + +- SQLite3: + . Fixed bug #72571 (SQLite3::bindValue, SQLite3::bindParam crash). (Laruence) + +- Standard: + . Fixed bug #72152 (base64_decode $strict fails to detect null byte). + (Lauri Kenttä) + . Fixed bug #72263 (base64_decode skips a character after padding in strict + mode). (Lauri Kenttä) + . Fixed bug #72264 (base64_decode $strict fails with whitespace between + padding). (Lauri Kenttä) + +- Wddx: + . Fixed bug #72564 (boolean always deserialized as "true") (Remi) -21 Jul 2016, PHP 5.6.24 +21 Jul 2016 PHP 7.0.9 - Core: - . Fixed bug #71936 (Segmentation fault destroying HTTP_RAW_POST_DATA). - (mike dot laspina at gmail dot com, Remi) - . Fixed bug #72496 (Cannot declare public method with signature incompatible - with parent private method). (Pedro Magalhães) - . Fixed bug #72138 (Integer Overflow in Length of String-typed ZVAL). (Stas) + . Fixed bug #72508 (strange references after recursive function call and + "switch" statement). (Laruence) -- bz2: - . Fixed bug #72447 (Type Confusion in php_bz2_filter_create()). (gogil at - stealien dot com). +- CLI: + . Fixed bug #72484 (SCRIPT_FILENAME shows wrong path if the user specify + router.php). (Laruence) -- EXIF: - . Fixed bug #50845 (exif_read_data() returns corrupted exif headers). - (Bartosz Dziewoński) +- COM: + . Fixed bug #72498 (variant_date_from_timestamp null dereference). (Anatol) - GD: . Fixed bug #43475 (Thick styled lines have scrambled patterns). (cmb) diff --cc ext/reflection/php_reflection.c index 4c3f6240f4,5f15287237..964e7a9e57 --- a/ext/reflection/php_reflection.c +++ b/ext/reflection/php_reflection.c @@@ -615,15 -670,30 +615,19 @@@ static void _class_string(string *str, /* }}} */ /* {{{ _const_string */ -static void _const_string(string *str, char *name, zval *value, char *indent TSRMLS_DC) +static void _const_string(string *str, char *name, zval *value, char *indent) { - char *type; - type = zend_zval_type_name(value); + char *type = zend_zval_type_name(value); - zend_string *value_str = zval_get_string(value); - string_printf(str, "%s Constant [ %s %s ] { %s }\n", - indent, type, name, ZSTR_VAL(value_str)); - - zend_string_release(value_str); + if (Z_TYPE_P(value) == IS_ARRAY) { + string_printf(str, "%s Constant [ %s %s ] { Array }\n", + indent, type, name); + } else { - zval value_copy; - int use_copy; - - zend_make_printable_zval(value, &value_copy, &use_copy); - if (use_copy) { - value = &value_copy; - } - ++ zend_string *value_str = zval_get_string(value); + string_printf(str, "%s Constant [ %s %s ] { %s }\n", - indent, type, name, Z_STRVAL_P(value)); - - if (use_copy) { - zval_dtor(value); - } ++ indent, type, name, ZSTR_VAL(value_str)); ++ zend_string_release(value_str); + } } /* }}} */