Commit Graph

72630 Commits

Author SHA1 Message Date
Nikita Popov
be7b0bc3ec Implement Generator::throw() method
Generator::throw($exception) throws an exception into the generator. The
exception is thrown at the current point of suspension within the generator.
It basically behaves as if the current yield statement were replaced with
a throw statement and the generator subsequently resumed.
2012-12-24 00:27:55 +01:00
Pierrick Charron
24f1ef1b02 Update NEWS 2012-12-23 17:48:05 -05:00
Pierrick Charron
33f44af1a7 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.
2012-12-23 17:13:49 -05:00
Pierrick Charron
4b4f3db731 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
2012-12-23 15:45:39 -05:00
Pierrick Charron
64595a5d1a Add curl_multi_setopt and clean curl_share_setopt
curl_multi_setopt is now available and supports CURLMOPT_PIPELINING
and CURLMOPT_MAXCONNECTS
2012-12-23 14:59:41 -05:00
Pierrick Charron
ded889e865 Remove duplicated function definition 2012-12-23 14:05:04 -05:00
Pierrick Charron
ee453541ed Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Update NEWS file
  Fixed segfault due to libcurl connection caching
2012-12-22 19:10:35 -05:00
Pierrick Charron
3f0dcc08e0 Update NEWS file 2012-12-22 19:09:56 -05:00
Pierrick Charron
b10a3b9466 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed segfault due to libcurl connection caching
2012-12-22 19:04:45 -05:00
Pierrick Charron
a2b6d9c104 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
2012-12-22 19:03:24 -05:00
Pierrick Charron
e3c88d16b4 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)
2012-12-21 19:27:51 -05:00
Pierrick Charron
5499c7d201 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)

Conflicts:
	ext/curl/interface.c
	ext/curl/tests/bug63363.phpt
2012-12-21 19:24:28 -05:00
Pierrick Charron
1c553eba19 Update NEWS file 2012-12-21 19:19:25 -05:00
Pierrick Charron
af10e698a2 Fixed bug #63352 (Can't enable hostname validation when using curl stream wrappers) 2012-12-21 19:12:43 -05:00
Pierrick Charron
517f800277 CURL >= 7.28.0 no longer support value 1 for CURLOPT_SSL_VERIFYHOST)
Fixed bug #63795
2012-12-21 19:10:55 -05:00
Pierrick Charron
52e7b0ce2c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix test to work on every libcurl version
  - Fixed typo on "SKIPIF" (causing make test to abort on some systems)
2012-12-21 12:25:34 -05:00
Pierrick Charron
59a4514dc0 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fix test to work on every libcurl version
  - Fixed typo on "SKIPIF" (causing make test to abort on some systems)

Conflicts:
	tests/output/bug63377.phpt
2012-12-21 12:24:52 -05:00
Pierrick Charron
63659ce526 Fix test to work on every libcurl version 2012-12-21 12:19:54 -05:00
Pierrick Charron
9d235eadc8 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix test
2012-12-21 11:49:00 -05:00
Pierrick Charron
763bce0303 Fix test
This test is only valid if libcurl < 7.28.1 since
libcurl removed support for the 1 value in CURLOPT_SSL_VERIFYHOST.
2012-12-21 11:45:59 -05:00
Nikita Popov
14f133036c 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.
2012-12-21 17:28:20 +01:00
Nikita Popov
ffb848b275 Fix bug #63822: Crash when using closures with ArrayAccess
op_array->T was used after the closure's op_array was already freed. This just
swaps the freeing order.
2012-12-21 01:56:37 +01:00
Felipe Pena
56d9edbbb9 - Fixed typo on "SKIPIF" (causing make test to abort on some systems) 2012-12-20 22:35:05 -02:00
Nikita Popov
3e78c6ad25 Do not add a ref to EX(object) on generator clone
If a ref has to be added it will be already added while walking the call
slots.
2012-12-20 20:33:18 +01:00
Rasmus Lerdorf
d5fe89670e Merge branch 'PHP-5.4' into PHP-5.5 2012-12-19 23:00:41 -05:00
Rasmus Lerdorf
180b9e150b Fix for bug #63811 2012-12-19 22:58:18 -05:00
Pierrick Charron
aa9156d7e0 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #55438 (Curlwapper is not sending http header randomly)
2012-12-19 19:46:57 -05:00
Pierrick Charron
66b88c92bb Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed bug #55438 (Curlwapper is not sending http header randomly)
2012-12-19 19:44:08 -05:00
Pierrick Charron
c46e1cdcae 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
2012-12-19 19:40:29 -05:00
Johannes Schlüter
1ee8c3d9a2 Merge branch 'PHP-5.4' into PHP-5.5 2012-12-19 17:01:44 +01:00
Andrey Hristov
ec012c1b75 Merge branch 'PHP-5.4' into PHP-5.5
Conflicts:
	ext/mysqlnd/mysqlnd_alloc.c
2012-12-19 16:58:34 +01:00
Johannes Schlüter
59692de77f Merge branch 'PHP-5.3' into PHP-5.4 2012-12-19 16:17:18 +01:00
Johannes Schlüter
e01fe5315c Update release date 2012-12-19 16:15:39 +01:00
Nikita Popov
2768315856 Add missing zend_do_free call
This is a followup to d53f1bf8ab. When the yield *statement* is used its
return value still needs to be freed.
2012-12-19 15:21:34 +01:00
Andrey Hristov
ae9ba081c8 Merge branch 'PHP-5.4' of ssh://git.php.net/php-src into PHP-5.4 2012-12-19 15:08:09 +01:00
Remi Collet
828bb4d44d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix failing test on Linux build
2012-12-19 10:25:05 +01:00
Remi Collet
3732fa95c5 fix failing test on Linux build 2012-12-19 10:23:57 +01:00
Nikita Popov
d53f1bf8ab Fix leak when generator ignores sent value
When the return value of yield wasn't used it was leaked.

This is fixed by using a TMP_VAR return value instead of VAR. TMP_VARs are
automatically freed when they aren't used.
2012-12-18 21:39:02 +01:00
David Soria Parra
19f8bba10d News for PHP 5.5.0 Alphas 2012-12-18 16:51:04 +01:00
Andrey Hristov
1f7c46b579 be cautious about the result of strrchr 2012-12-18 16:21:05 +01:00
Xinchen Hui
ea649a5aba Merge branch 'PHP-5.4' into PHP-5.5 2012-12-17 14:30:20 +08:00
Xinchen Hui
05deaf1706 Merge branch 'PHP-5.3' into PHP-5.4 2012-12-17 14:29:45 +08:00
Xinchen Hui
06739a1b72 dos2unix & skip on connect fail 2012-12-17 14:29:13 +08:00
Xinchen Hui
ea5132866f Merge branch 'PHP-5.4' into PHP-5.5 2012-12-17 12:58:12 +08:00
Xinchen Hui
2f7f57a407 Merge branch 'PHP-5.3' into PHP-5.4 2012-12-17 12:57:37 +08:00
Xinchen Hui
d2cc097049 Fix failed test 2012-12-17 12:56:55 +08:00
Sebastian Bergmann
67a7a66466 Ignore Zend/zend_dtrace_gen.h and Zend/zend_dtrace_gen.hbak 2012-12-16 09:07:55 +01:00
Remi Collet
717b367085 Fixed bug #63706: Cannot build PHP-5.5 with --enable-dtrace on Fedora 17 2012-12-16 08:51:17 +01:00
Lars Strojny
36a5eca89c Updating news entry to list new filetypes 2012-12-15 12:00:42 +01:00
Lars Strojny
aaa5e42177 Merge branch 'PHP-5.4' into PHP-5.5 2012-12-14 14:56:25 +01:00