Commit graph

99637 commits

Author SHA1 Message Date
Christoph M. Becker
35c5c4b43f Merge branch 'PHP-7.1' 2016-10-07 16:22:23 +02:00
Christoph M. Becker
3afdf9e439 Merge branch 'PHP-7.0' into PHP-7.1 2016-10-07 16:21:52 +02:00
Christoph M. Becker
88d0201a89 Document that ext/shmop deals with resources as of PHP 7.0.0 2016-10-07 16:13:24 +02:00
Christoph M. Becker
432e16cb58 Unify error handling of bundled and external libgd
There's no need anymore to call an own error handler directly. Instead we
register our error handler and call libgd's error functions (which will
forward). We do this regardless of compiling with the bundled or an external
libgd.
2016-10-07 01:13:49 +02:00
Nikita Popov
8754b191f7 Fix "already in use" check inconsistencies/bugs
This fixes the following issues:
 * "use function" and "use const" inside namespaced code were checking
   for conflicts against class imports. Now they always check against
   the correct symbol type.
 * Symbol conflicts are now always checked within a single file only.
   Previously class uses inside namespaced code were checked globally.
   This behavior is illegal because symbols from other files are not
   visible if opcache is used, resulting in behavioral discrepancies.
   Additionally this made the presence/absence of symbol errors dependent
   on autoloading order, which is volatile.
 * The "single file" restriction is now enforced by collecting defined
   symbols inside a separate hash table. Previously it was enforced
   (for the non-namespaced case) by comparing the filename of the
   symbol declaration. However this is inaccurate if the same filename
   is used multiple times, such as may happen if eval() is used.
 * Additionally the previous approach relies on symbols being registered
   at compile-time, which is not the case for late-bound classes, which
   makes the behavior dependent on class declaration order, as well as
   opcache (which may cause delayed early-binding).
 * Lastly, conflicts are now consistently checked for conditionally
   defined symbols. Previously only declaration-after-use conflicts were
   checked in this case. Now use-after-declaration conflicts are
   detected as well.
2016-10-07 00:12:55 +02:00
Anatol Belski
940731df04 Merge branch 'PHP-7.1'
* PHP-7.1:
  fix datatype
2016-10-06 11:03:45 +02:00
Anatol Belski
bc5efe501e Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix datatype
2016-10-06 11:03:09 +02:00
Anatol Belski
ea83e504e5 fix datatype 2016-10-06 11:01:27 +02:00
Bob Weinand
d7474e13bd Merge branch 'PHP-7.1' 2016-10-06 10:36:40 +02:00
Bob Weinand
c9d3b9fb47 Use better fix for preventing too early freeing of interned strings
Works also with opcache now - just prevent zend_interned_strings_restore completely - zend_interned_strings_dtor will take care as phpdbg only ever uses one single request cycle per module cycle
2016-10-06 10:36:25 +02:00
Anatol Belski
46f4470e0d ensure the flag doesn't overflow
In certain case, it could take more than just 0/1, but 2 bits should
be enough.
2016-10-06 10:18:31 +02:00
Dmitry Stogov
f924893ab9 Merge branch 'PHP-7.1'
* PHP-7.1:
  Updated reference-counting inferece rules. The previous rules refected PHP-5 behavior and were completely wrong for PHP-7. (e.g. scalars don't have reference counters at all). This change shouldn't affect anything, because results of this inference are not used yet.
  Fix NEWS after re-roll of RC3
2016-10-06 11:16:43 +03:00
Dmitry Stogov
b2d53e47ed Updated reference-counting inferece rules.
The previous rules refected PHP-5 behavior and were completely wrong for PHP-7. (e.g. scalars don't have reference counters at all).
This change shouldn't affect anything, because results of this inference are not used yet.
2016-10-06 11:08:01 +03:00
Anatol Belski
1e986c709c handle the stream->__exposed flag correctly
as it's a flag now, just set the value
2016-10-06 02:15:29 +02:00
Anatol Belski
269707f2f6 Enable QDBM support in ext/dba on Windows 2016-10-05 22:53:21 +02:00
Anatol Belski
42b7912f03 catch up with stream datatypes 2016-10-05 22:53:21 +02:00
Anatol Belski
02acb056b3 uint vs. uint32_t 2016-10-05 22:53:21 +02:00
Anatol Belski
0ca15cbeba reduce size of stream struct
32 bytes are spared on 64-bit build
2016-10-05 22:53:21 +02:00
Anatol Belski
4b41973ba1 prevent flags overflows
Sometimes int is overflown. That might still come out with a right
result, but is ofc not clean.
2016-10-05 22:53:21 +02:00
Anatol Belski
41d04079e3 reduce size of stream bucket struct by 8 bytes on 64-bit 2016-10-05 22:53:21 +02:00
Davey Shafik
50059639c8 Fix NEWS after re-roll of RC3 2016-10-05 13:07:47 -07:00
Derick Rethans
6e806b4560 Merge branch 'PHP-7.1' 2016-10-05 15:32:24 -04:00
Derick Rethans
14087d3d16 Merge branch 'microseconds' into PHP-7.1 2016-10-05 15:32:11 -04:00
Derick Rethans
55626549d8 Improve support for microseconds with Date/Time
It fixes several bugs:

- Fixed bug #45554 (Inconsistent behavior of the u format char).
- Fixed bug #48225 (DateTime parser doesn't set microseconds for "now").
- Fixed bug #52514 (microseconds are missing in DateTime class).
- Fixed bug #52519 (microseconds in DateInterval are missing).
- Fixed bug #68506 (General DateTime improvments needed for microseconds to become useful).
- Fixed bug #73109 (timelib_meridian doesn't parse dots correctly).
- Fixed bug #73247 (DateTime constructor does not initialise microseconds property).

It also updates timelib to 2016.04, and updates a data mapping file, which
causes changes to the volatile abbreviations tests.
2016-10-05 15:03:06 -04:00
Anatol Belski
7c71b64eec Merge branch 'PHP-7.1'
* PHP-7.1:
  Fix bug #73037, second round
2016-10-05 15:05:56 +02:00
Anatol Belski
d5b77d6662 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix bug #73037, second round
2016-10-05 15:04:55 +02:00
Anatol Belski
5b79e95f7b Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix bug #73037, second round
2016-10-05 15:03:38 +02:00
Anatol Belski
07546496b1 Fix bug #73037, second round 2016-10-05 14:54:06 +02:00
Christoph M. Becker
52b9ea9795 Merge branch 'PHP-7.1' 2016-10-05 13:13:04 +02:00
Christoph M. Becker
31c32455d4 Merge branch 'pull-request/2155' into PHP-7.1 2016-10-05 13:07:39 +02:00
Bob Weinand
38beb0e8d8 Merge branch 'PHP-7.1' 2016-10-05 12:22:39 +02:00
Bob Weinand
abfd811ea4 Merge branch 'PHP-7.0' into PHP-7.1 2016-10-05 12:20:06 +02:00
Bob Weinand
4790da5475 Update run command for allowing STDIN 2016-10-05 12:14:02 +02:00
Bob Weinand
eaff72f31b Remove phpdbg fix targeting 7.1 which landed in 7.0 2016-10-05 12:08:20 +02:00
Stanislav Malyshev
d946d10293 Bug #73218: add mitigation for ICU int overflow 2016-10-04 22:40:43 -07:00
Stanislav Malyshev
eb990a014c Merge branch 'PHP-7.1'
* PHP-7.1:
  Fixed test
  Added validation to parse_url() to prohibit restricted characters inside login/pass components based on RFC3986
  Apparently negative wordwrap is a thing and should work as length = 0.
2016-10-04 21:57:43 -07:00
Stanislav Malyshev
cc2a0dd018 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed test
  Added validation to parse_url() to prohibit restricted characters inside login/pass components based on RFC3986
  Apparently negative wordwrap is a thing and should work as length = 0.
2016-10-04 21:57:28 -07:00
Stanislav Malyshev
56e19b7c75 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed test
  Added validation to parse_url() to prohibit restricted characters inside login/pass components based on RFC3986
  Apparently negative wordwrap is a thing and should work as length = 0.
2016-10-04 21:56:28 -07:00
Stanislav Malyshev
d3eb58332a Add more locale length checks, due to ICU bugs. 2016-10-04 21:28:40 -07:00
Ilia Alshanetsky
a10d03ac16 Fixed test 2016-10-04 21:20:38 -07:00
Ilia Alshanetsky
085dfca02b Added validation to parse_url() to prohibit restricted characters inside login/pass components based on RFC3986 2016-10-04 21:20:31 -07:00
Craig Duncan
6e31aad8b8 Skip tests that rely on sessions if sessions aren't available 2016-10-04 20:51:18 +01:00
Stanislav Malyshev
8ea01d5f19 Apparently negative wordwrap is a thing and should work as length = 0.
I'll leave it as is for now.
2016-10-03 19:17:42 -07:00
Stanislav Malyshev
3f04ee0b8b Merge branch 'PHP-7.1'
* PHP-7.1:
  Really fix bug #73017
2016-10-03 18:39:20 -07:00
Stanislav Malyshev
805580d15d Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Really fix bug #73017
2016-10-03 18:39:05 -07:00
Stanislav Malyshev
49b45e5af1 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Really fix bug #73017
2016-10-03 18:38:46 -07:00
Stanislav Malyshev
631173aa5c Really fix bug #73017 2016-10-03 18:07:21 -07:00
Keith Smiley
31cbce341c soap #69137 - Fix SSL verify when using a proxy
Name verification was failing because the OpenSSL extension was picking
the proxy server's address when guessing which name to compare to the
SSL certificate. This scenario is already handled for stream wrappers
in http_fopen_wrapper.c. This patch applies the same fix to the SOAP
extension: when a proxy is used, set peer_name explicitly on the stream
context.
2016-10-03 14:02:34 -04:00
Christoph M. Becker
9e88d3e431 Merge branch 'PHP-7.1' 2016-10-03 18:56:36 +02:00
Christoph M. Becker
5b52d5acde Fix #73207: Array ordering is same between 5.6.21 and 7.1.0 RC3 2016-10-03 18:55:39 +02:00