Merge branch 'PHP-5.4' of git.php.net:php-src into PHP-5.4

This commit is contained in:
Xinchen Hui 2013-03-03 11:25:08 +08:00
commit fe5ce5cb91
6 changed files with 41 additions and 7 deletions

14
NEWS
View file

@ -1,5 +1,7 @@
PHP NEWS PHP NEWS
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
?? ??? 2012, PHP 5.4.14
?? ??? 2012, PHP 5.4.13 ?? ??? 2012, PHP 5.4.13
- Core: - Core:
@ -23,17 +25,27 @@ PHP NEWS
. Fixed bug #60840 (undefined symbol: mysqlnd_debug_std_no_trace_funcs). . Fixed bug #60840 (undefined symbol: mysqlnd_debug_std_no_trace_funcs).
(Johannes) (Johannes)
- Phar:
. Fixed timestamp update on Phar contents modification. (Dmitry)
- SOAP
. Added check that soap.wsdl_cache_dir conforms to open_basedir
(CVE-2013-1635). (Dmitry)
. Disabled external entities loading (CVE-2013-1643). (Dmitry)
- SPL: - SPL:
. Fixed bug #64264 (SPLFixedArray toArray problem). (Laruence) . Fixed bug #64264 (SPLFixedArray toArray problem). (Laruence)
. Fixed bug #64228 (RecursiveDirectoryIterator always assumes SKIP_DOTS). . Fixed bug #64228 (RecursiveDirectoryIterator always assumes SKIP_DOTS).
(patch by kriss@krizalys.com, Laruence) (patch by kriss@krizalys.com, Laruence)
. Fixed bug #64106 (Segfault on SplFixedArray[][x] = y when extended). . Fixed bug #64106 (Segfault on SplFixedArray[][x] = y when extended).
(Nikita Popov) (Nikita Popov)
. Fixed bug #52861 (unset fails with ArrayObject and deep arrays).
(Mike Willbanks)
- SNMP: - SNMP:
. Fixed bug #64124 (IPv6 malformed). (Boris Lytochkin) . Fixed bug #64124 (IPv6 malformed). (Boris Lytochkin)
?? ??? 2012, PHP 5.4.12 21 Feb 2012, PHP 5.4.12
- Core: - Core:
. Fixed bug #64099 (Wrong TSRM usage in zend_Register_class alias). (Johannes) . Fixed bug #64099 (Wrong TSRM usage in zend_Register_class alias). (Johannes)

2
config.sub vendored
View file

@ -897,7 +897,7 @@ case $basic_machine in
;; ;;
ppc64) basic_machine=powerpc64-unknown ppc64) basic_machine=powerpc64-unknown
;; ;;
ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` ppc64-* | ppc64p7-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
;; ;;
ppc64le | powerpc64little | ppc64-le | powerpc64-little) ppc64le | powerpc64little | ppc64-le | powerpc64-little)
basic_machine=powerpc64le-unknown basic_machine=powerpc64le-unknown

View file

@ -119,7 +119,7 @@ int zend_sprintf(char *buffer, const char *format, ...);
PHP_MAJOR_VERSION=5 PHP_MAJOR_VERSION=5
PHP_MINOR_VERSION=4 PHP_MINOR_VERSION=4
PHP_RELEASE_VERSION=13 PHP_RELEASE_VERSION=14
PHP_EXTRA_VERSION="-dev" PHP_EXTRA_VERSION="-dev"
PHP_VERSION="$PHP_MAJOR_VERSION.$PHP_MINOR_VERSION.$PHP_RELEASE_VERSION$PHP_EXTRA_VERSION" PHP_VERSION="$PHP_MAJOR_VERSION.$PHP_MINOR_VERSION.$PHP_RELEASE_VERSION$PHP_EXTRA_VERSION"
PHP_VERSION_ID=`expr [$]PHP_MAJOR_VERSION \* 10000 + [$]PHP_MINOR_VERSION \* 100 + [$]PHP_RELEASE_VERSION` PHP_VERSION_ID=`expr [$]PHP_MAJOR_VERSION \* 10000 + [$]PHP_MINOR_VERSION \* 100 + [$]PHP_RELEASE_VERSION`

View file

@ -402,7 +402,7 @@ static zval *spl_array_read_dimension_ex(int check_inherited, zval *object, zval
/* When in a write context, /* When in a write context,
* ZE has to be fooled into thinking this is in a reference set * ZE has to be fooled into thinking this is in a reference set
* by separating (if necessary) and returning as an is_ref=1 zval (even if refcount == 1) */ * by separating (if necessary) and returning as an is_ref=1 zval (even if refcount == 1) */
if ((type == BP_VAR_W || type == BP_VAR_RW) && !Z_ISREF_PP(ret)) { if ((type == BP_VAR_W || type == BP_VAR_RW || type == BP_VAR_UNSET) && !Z_ISREF_PP(ret)) {
if (Z_REFCOUNT_PP(ret) > 1) { if (Z_REFCOUNT_PP(ret) > 1) {
zval *newval; zval *newval;

View file

@ -0,0 +1,22 @@
--TEST--
Bug #52861 (unset failes with ArrayObject and deep arrays)
--FILE--
<?php
$arrayObject = new ArrayObject(array('foo' => array('bar' => array('baz' => 'boo'))));
unset($arrayObject['foo']['bar']['baz']);
print_r($arrayObject->getArrayCopy());
?>
--EXPECT--
Array
(
[foo] => Array
(
[bar] => Array
(
)
)
)

View file

@ -2,7 +2,7 @@
/* edit configure.in to change version number */ /* edit configure.in to change version number */
#define PHP_MAJOR_VERSION 5 #define PHP_MAJOR_VERSION 5
#define PHP_MINOR_VERSION 4 #define PHP_MINOR_VERSION 4
#define PHP_RELEASE_VERSION 13 #define PHP_RELEASE_VERSION 14
#define PHP_EXTRA_VERSION "-dev" #define PHP_EXTRA_VERSION "-dev"
#define PHP_VERSION "5.4.13-dev" #define PHP_VERSION "5.4.14-dev"
#define PHP_VERSION_ID 50413 #define PHP_VERSION_ID 50414