Pierrick Charron [Sun, 23 Dec 2012 22:13:49 +0000 (17:13 -0500)]
New curl_pause() function
Add the curl_pause function (binding of curl_easy_pause).
Using this function, you can explicitly mark a running connection
to get paused, and you can unpause a connection that was
previously paused.
Pierrick Charron [Sun, 23 Dec 2012 20:45:39 +0000 (15:45 -0500)]
Support for curl_strerror and curl_multi_strerror
Add the support for both curl_strerror and curl_multi_strerror.
Those function will return a string describing the error code
passed in the argument errornum
Pierrick Charron [Sun, 23 Dec 2012 00:03:24 +0000 (19:03 -0500)]
Fixed segfault due to libcurl connection caching
Libcurl is doing connection caching. When easy handle is cleaned up,
if the handle was previously used by the curl_multi_api, the connection
remains open un the curl multi handle is cleaned up. Some protocols are
sending content like the FTP one, and libcurl try to use the
WRITEFUNCTION or the HEADERFUNCTION. Since structures used in those
callback are freed, we need to use an other callback to which avoid
segfaults.
Libcurl commit d021f2e8a00 fix this issue and should be part of 7.28.2
Pierrick Charron [Sat, 22 Dec 2012 00:27:51 +0000 (19:27 -0500)]
Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
Update NEWS file
Fixed bug #63352 (Can't enable hostname validation when using curl stream wrappers)
CURL >= 7.28.0 no longer support value 1 for CURLOPT_SSL_VERIFYHOST)
Pierrick Charron [Sat, 22 Dec 2012 00:24:28 +0000 (19:24 -0500)]
Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
Update NEWS file
Fixed bug #63352 (Can't enable hostname validation when using curl stream wrappers)
CURL >= 7.28.0 no longer support value 1 for CURLOPT_SSL_VERIFYHOST)
Nikita Popov [Fri, 21 Dec 2012 16:28:20 +0000 (17:28 +0100)]
Fix crash when last yielded value is a closure
If zend_generator_close is called from within zend_generator_resume (e.g.
due to a return statement) then all the EGs will still be using the values
from the generator. That's why the stack frame has to be the last thing
that is dtored, otherwise some other dtor that is using
EG(current_execute_data) might access the already freed memory segment.
This was the case with the closure dtor.
The fix is to move the dtors for key and value to the start of the handler.
This way the stack frame is the last thing that is freed.
Pierrick Charron [Thu, 20 Dec 2012 00:40:29 +0000 (19:40 -0500)]
Fixed bug #55438 (Curlwapper is not sending http header randomly)
Since curl multi is used, it sometime happen that the resource is freed before
the curl multi really execute the query. The patch will store the headers
slist in the curlstream handle and free it only when the stream will be closed
pascalc [Tue, 11 Dec 2012 11:45:00 +0000 (12:45 +0100)]
update list of common Mime Types in PHP development server to support Web audio/video formats (Webm ,and Ogg containers) + have jpeg mime types listed together
Remi Collet [Wed, 12 Dec 2012 15:53:18 +0000 (16:53 +0100)]
Really fix test pdo_mysql_class_constants.phpt
- with mysqlnd, constant always present
- with mysqli, check client library version
- without mysqlnd and without mysqli
skip the test if no connection
use connection to check client library
Note : MySQLPDOTest::getClientVersion() is broken with mysqlnd
as PDO::ATTR_CLIENT_VERSION return "mysqlnd 5.0.11-dev - 20120503..."
so, getClientVersion() return "11"
Adam Harvey [Tue, 11 Dec 2012 01:08:07 +0000 (09:08 +0800)]
Tinker with the wording of the MySQL deprecation news post.
I know that in general NEWS is a very punchy "this is what happened" log, but
Chris e-mailed me off-list to ask if it could be added to avoid any FUD — this
merely brings the NEWS post into line with UPGRADING, the migration guide, and
every other piece of advice we're giving out.
I also forgot to add the RFC URL last night, so added that.
Adam Harvey [Mon, 10 Dec 2012 14:12:09 +0000 (22:12 +0800)]
Deprecate ext/mysql.
Per https://wiki.php.net/rfc/mysql_deprecation, connecting to a MySQL database
via ext/mysql now generates an E_DEPRECATED error. This commit includes the
minimal EXPECTF updates required for the test suite to pass: it may be
preferable to refactor some of the tests to suppress deprecation errors in
situations where no other error is expected from mysql_[p]connect(), but I'm
not enough of a MySQL expert to want to get my hands that dirty in a long
standing test suite.