Nikita Popov [Sat, 24 Mar 2012 12:10:51 +0000 (13:10 +0100)]
Return previous error handler when resetting the error handler
set_error_handler(null) and set_exception_handler(null) now return the
previous error/exception handler instead of just returning bool(true).
This is consistent with the behavior of these functions with non-null
values.
Nikita Popov [Sat, 24 Mar 2012 11:52:15 +0000 (12:52 +0100)]
Allow resetting the error handler
This allows the error handler to be reset using set_error_handler(null).
As the code suggests this behavior was already previously intended, but
the callback check was done too strictly.
Laruence already did some partial changes to set_error_handler and
set_exception_handler. I'm reverting those modifications to apply the full
set of changes. (The modifications changed the code structure in a way that
would lead to more duplication with the new behavior.)
Avoid calling select if maxfd returned by curl_multi_fdset is -1
As per libcurl documentation :
When libcurl returns -1 in max_fd, it is because libcurl currently
does something that isn't possible for your application to monitor
with a socket and unfortunately you can then not know exactly when
the current action is completed using select().
The API is supported since Windows Vista and requires targeting Vista
when compiling PHP. Pierre had asked to disable this by default, even
when targeting Vista/Windows Server 2008.
Since XP will not be supported anymore on php-next, any rationale
for this option will not apply anymore.
Lars Strojny [Wed, 19 Sep 2012 20:17:35 +0000 (22:17 +0200)]
Bug #63000: MCAST_JOIN_GROUP on OSX is broken
The multicast support in PHP 5.4 makes use of MCAST_JOIN_GROUP if it is present.
The problem is that OSX 10.7 added the constant, but did not correctly implement
the feature. This causes the setsockopt call to fail.
The solution to the problem is to not use MCAST_JOIN_GROUP on OSX.
Stuart Langley [Thu, 13 Sep 2012 15:37:37 +0000 (17:37 +0200)]
Support building PHP with the native client toolchain.
The native client compiler defines the C macro __x86_64__, but the size
of an unsigned int is only 4 bytes. This causes the compile to fail
because the inline asm code compiled is for an 8 byte unsigned int. Add
the correct defines to fix this.
As detailed in:
http://code.google.com/p/nativeclient/issues/detail?id=2255
Generators follow a different cleanup path, so the extra check for freeing
the execute_data is unnecessary there. It actually caused problems because
op_array->fn_flags could be in freed memory at that time (in case op_array
came from a closure in an ArrayAccess container).
This fixes the valgrind warning in Zend/tests/bug54367.phpt.
Merge branch 'master' of https://git.php.net/repository/php-src
* 'master' of https://git.php.net/repository/php-src:
Capitalize the warning message
Rearrange the codes, remove empty lines
Provide a specific error message if date.timezone value is invalid.
regenerate patch, and save a strlen
Fix the wrong use of snprintf which is introduced in 1d2f61904987133d542c68cd349cf313d0bef1c8
Fixed unintendent clearance of PHP_OUTPUT_ACTIVATED flag
Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4
* 'PHP-5.4' of https://git.php.net/repository/php-src:
regenerate patch, and save a strlen
Fix the wrong use of snprintf which is introduced in 1d2f61904987133d542c68cd349cf313d0bef1c8
Fixed unintendent clearance of PHP_OUTPUT_ACTIVATED flag
Merge branch 'master' of https://git.php.net/repository/php-src
* 'master' of https://git.php.net/repository/php-src: (157 commits)
Fix doc bug #63032 (Number of release in documentation).
fixed test for bug #52944 also for darwin
-enable VC11 (vc2012)
- Fixed bug #61767 (Shutdown functions not called in certain error situation) - Fixed bug #60909 (custom error handler throwing Exception + fatal error = no shutdown function)
year++
correct PHP version & year++
Correct PHP version
year++
- fix build, there was no tsrm context there, doing a fetch but this is horribly slow, this fix needs improvement (or simply add a TSRM context in the signature in master
- fix build, declarations must be 1st in a contextgit checkout -f master
Fixed bug #62907 (Double free when use traits)
Fixed bug #62991 (Segfault with generator and closure)
forked two tests for windows
Fixed bug #50997 (SOAP Error when trying to submit 2nd Element of a choice)
Fixed bug #50997 (SOAP Error when trying to submit 2nd Element of a choice).
Fixed bug #50997 (SOAP Error when trying to submit 2nd Element of a choice).
Fixed bug #50997 (SOAP Error when trying to submit 2nd Element of a choice)
Fixed bug #50997 (SOAP Error when trying to submit 2nd Element of a choice)
Bug #49510: Boolean validation fails with FILTER_NULL_ON_FAILURE with empty string or false
Implemented ReflectionFunction::isGenerator()
...
Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4
* 'PHP-5.4' of https://git.php.net/repository/php-src: (54 commits)
Fix doc bug #63032 (Number of release in documentation).
fixed test for bug #52944 also for darwin
- Fixed bug #61767 (Shutdown functions not called in certain error situation) - Fixed bug #60909 (custom error handler throwing Exception + fatal error = no shutdown function)
year++
correct PHP version & year++
Correct PHP version
year++
- fix build, there was no tsrm context there, doing a fetch but this is horribly slow, this fix needs improvement (or simply add a TSRM context in the signature in master
Fixed bug #62907 (Double free when use traits)
forked two tests for windows
Fixed bug #50997 (SOAP Error when trying to submit 2nd Element of a choice).
Fixed bug #50997 (SOAP Error when trying to submit 2nd Element of a choice).
Fixed bug #50997 (SOAP Error when trying to submit 2nd Element of a choice)
Bug #49510: Boolean validation fails with FILTER_NULL_ON_FAILURE with empty string or false
Allow null as a default value for length in mb_substr() and mb_strcut()
folder
Initializing optional argument description in assert()
fix NEWS
Remove extra blank in notice message, should act as same as vm
Fixed bug #62987 (Assigning to ArrayObject[null][something] overrides all undefined variables)
...