Compare commits

..
2056 Commits
Author SHA1 Message Date
Joe Watkins 5d08c71074 set versions 2017-05-09 13:27:36 +01:00
Anatol Belski ee9650c3d2 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Revert "Detect invalid port in xp_socket parse ip address"
  Revert "Follow up patch regarding bug #74216, see bug #74429"
2017-04-27 21:52:47 +01:00
Joe Watkins 4951d16dba prepare release 2017-04-25 16:46:08 +01:00
Anatol Belski 8c50a1a3e2 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  move next
2017-04-25 14:07:36 +02:00
Anatol Belski 53a702c020 move next 2017-04-25 14:06:17 +02:00
Anatol Belski 7d560514fc [ci skip] update NEWS 2017-04-25 14:01:00 +02:00
Anatol Belski bf2fc2800e Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  [ci skip] update NEWS
2017-04-25 14:00:10 +02:00
Anatol Belski 6aac86ec29 [ci skip] update NEWS 2017-04-25 13:59:20 +02:00
Anatol Belski faf19a7756 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Follow up patch regarding bug #74216, see bug #74429
2017-04-25 12:59:22 +02:00
Sara Golemon cda7dcf4ca Follow up patch regarding bug #74216, see bug #74429
While the case in bug #74429 is not documented and is only worky due to
an implementation bug, the strength seems to breach some real world
apps. Given this patch doesn't impact the initial security fix for
bug #74216, it is reasonable to let the apps keep working. As mentioned
in the ticket, this behavior is a subject to change in future versions
and should not be abused.
2017-04-25 12:52:48 +02:00
Anatol Belski 44fdae4360 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  don't backup older deps after upgrades
  update SDK version for AppVeyor
2017-04-24 22:12:26 +02:00
Anatol Belski 6afcd6c86a don't backup older deps after upgrades 2017-04-24 22:10:32 +02:00
Anatol Belski e969966468 update SDK version for AppVeyor 2017-04-24 22:08:45 +02:00
Jakub Zelenka 7260f65c62 Merge branch 'PHP-7.0' into PHP-7.1 2017-04-24 17:12:55 +01:00
Jakub Zelenka 9fa347997a Fix bug #73833 (null character not allowed in openssl_pkey_get_private) 2017-04-24 17:11:36 +01:00
Anatol Belski f504e9eb72 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Support also no,shared configure arg vals by default
2017-04-24 16:22:16 +02:00
Anatol Belski f7b8322b14 Support also no,shared configure arg vals by default
This indirectly fixes bug #74398 where --with-extname is expected to be
configured shared with our default dependency package. With a non
default deps, it still can be enforced --with-extname=static
2017-04-24 15:46:22 +02:00
Jakub Zelenka d37c4b0948 Merge branch 'PHP-7.0' into PHP-7.1 2017-04-23 21:06:45 +01:00
Jakub Zelenka dd36541f2c Add missing NEWS entries for 7.0.19 2017-04-23 21:03:35 +01:00
Anatol Belski b720160444 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  extend zlib export required for the recent libpng
2017-04-23 21:34:31 +02:00
Anatol Belski f3c4e2f5bf extend zlib export required for the recent libpng 2017-04-23 21:33:14 +02:00
Jakub Zelenka ba83b18ce3 Merge branch 'PHP-7.0' into PHP-7.1 2017-04-23 20:31:24 +01:00
Jakub Zelenka 366b1640d0 Fix bug #73711 (Segfault in openssl_pkey_new when generating DSA or DH key) 2017-04-23 20:30:14 +01:00
Anatol Belski 144ddd3b42 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  extend zlib export required for the recent libpng
2017-04-23 21:28:26 +02:00
Anatol Belski 2909742326 extend zlib export required for the recent libpng 2017-04-23 21:27:34 +02:00
Anatol Belski fa72b039da [ci skip] update NEWS 2017-04-22 22:41:15 +02:00
Anatol Belski 3f2271a717 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  [ci skip] update NEWS
2017-04-22 22:40:48 +02:00
Anatol Belski 5d1fd66faf [ci skip] update NEWS 2017-04-22 22:39:59 +02:00
Anatol Belski 91cb9a6ad1 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  #74337 pointer returned by php_stream_fopen_tmpfile not validated in memory.c
2017-04-22 21:58:10 +02:00
Anton Serbulov 793a8bd886 #74337 pointer returned by php_stream_fopen_tmpfile not validated in memory.c 2017-04-22 21:56:37 +02:00
Anatol Belski 000fe3aacc Fixed bug #74489 readline() immediately returns false in interactive console mode 2017-04-22 18:33:53 +02:00
Joe Watkins aa0a2e8c58 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Avoid exact floating point comparison
2017-04-20 06:42:44 +01:00
Steve Walk 9b7f13cb1b Avoid exact floating point comparison 2017-04-20 06:42:20 +01:00
Joe Watkins 242bdf7e8b Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Update php_network.h
2017-04-20 06:39:26 +01:00
Alexander Ilyin 464742bd2a Update php_network.h
```
In file included from /usr/local/include/php/main/php_network.h:124:0,
                 from /var/www/html/php-ext-handlersocketi-0.0.1/hs_response.c:3:
/usr/include/sys/poll.h:1:2: warning: #warning redirecting incorrect #include <sys/poll.h> to <poll.h> [-Wcpp]
 #warning redirecting incorrect #include <sys/poll.h> to <poll.h>
  ^
```
2017-04-20 06:39:14 +01:00
Xinchen Hui 0a27a5ba8c Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:/php-src:
  Fix loop identification
2017-04-17 20:27:07 +08:00
Xinchen Hui d6315c2fbb Fixed bug #74456 (Segmentation error while running a script in CLI mode)
Instead of make update_op1_by_const supports FETCH_LIST(CASE), I think
disable it is more safe for 7.1
2017-04-17 20:24:39 +08:00
Nikita Popov abf16c18c7 Fix loop identification
When assigning loop headers, we should treat already detected
loops as collapsed to their loop header, instead of ignoring them.

This fixes the loop header of BB2 in mandel2 if live-range CFG
splitting is enabled.
2017-04-17 12:17:32 +02:00
Joe Watkins f69c108249 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  ext/gettext: respect passed in library directory for all checks
2017-04-17 08:12:02 +01:00
Michael Heimpold 32c5b8efd6 ext/gettext: respect passed in library directory for all checks
A directory given to configure by --with-gettext=dir is only
used within the very first AC_CHECK_LIB. This is because the
temporary modified LDFLAGS variable is reset too early.

This results in functions not detected properly.

The original issue and patch was reported for OpenWrt/LEDE
distribution by @Dimazhan at:
https://github.com/openwrt/packages/issues/4250

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2017-04-17 08:11:40 +01:00
Joe Watkins bc3c9a06e0 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #74080 Add datetime constant for RFC7231
2017-04-17 08:09:24 +01:00
Craig Duncan 618d97962a Fixed bug #74080 Add datetime constant for RFC7231 2017-04-17 08:08:54 +01:00
Joe Watkins 0959e6f422 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #74439 Wrong reflection on the Locale methods
2017-04-17 07:58:22 +01:00
Fabien Villepinte 7dc6b04f45 Fixed bug #74439 Wrong reflection on the Locale methods 2017-04-17 07:56:47 +01:00
Anatol Belski 949de4e46f Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  [ci skip] update NEWS
2017-04-16 14:55:51 +02:00
Anatol Belski 6a04a39d57 [ci skip] update NEWS 2017-04-16 14:55:31 +02:00
Anatol Belski ce330ad8aa [ci skip] update NEWS 2017-04-16 14:54:37 +02:00
Anatol Belski 039ef0143b Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  improve/fix error handling
2017-04-15 19:35:13 +02:00
Anatol Belski ca543ff01c improve/fix error handling
GetLastError() should not be called, if the function didn't fail.
2017-04-15 19:32:04 +02:00
Anatol Belski 5bd0baa891 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix error handling
2017-04-15 18:25:31 +02:00
Anatol Belski 9719621e07 fix error handling 2017-04-15 18:19:33 +02:00
Nikita Popov 2719b8e91c Merge branch 'PHP-7.0' into PHP-7.1 2017-04-15 18:15:33 +02:00
Nikita Popov e433c23b96 Improve accuracy of opline lineno information
If compile_var() was used instead of compile_expr() we did not
update the current lineno.
2017-04-15 18:15:24 +02:00
Anatol Belski 62bec0e212 extend error map 2017-04-15 17:27:45 +02:00
Nikita Popov 00c6ce0e00 Merge branch 'PHP-7.0' into PHP-7.1 2017-04-15 12:35:53 +02:00
Nikita Popov 0beccc51f1 Fix compact_literals of INIT_METHOD_CALL with CONST op1 2017-04-15 12:35:09 +02:00
Nikita Popov 6c2222796b Improve fix for bug #74442
Make the check less conservative to be consistent with the other
cases.
2017-04-15 01:39:33 +02:00
David Matejka 2135b057ec Fixed bug #74444: multiple catch freezes in some cases
zend_emit_jump() may reallocate, so reload the opline.
2017-04-15 01:38:37 +02:00
Rasmus Lerdorf d80df7a8bf Credit goes to Eric Norris for this one 2017-04-14 15:48:24 -07:00
Nikita Popov 2f22dffd1a Fixed bug #74442 2017-04-14 22:20:32 +02:00
Nikita Popov 3ffe2cd251 Fixed bug #74431
If the last instruction in a block is a NOP, then `new_opline`
here won't be a copy of `opline`, it will be a copy of the last
non-NOP opline. Avoid performing a spurious update by explicitly
checking for NOP.
2017-04-14 22:03:06 +02:00
ekinhbayar 5d095f80c9 Test for bug 74431 2017-04-14 21:26:02 +02:00
Johannes Schlüter b760508adc Merge branch 'PHP-7.0' into PHP-7.1 2017-04-14 16:30:51 +02:00
Johannes Schlüter 35a28fac51 Add support for MySQL 8's Unicode types 2017-04-14 16:30:10 +02:00
Joe Watkins 4ae69f986f missing news entry from 7.1.3 2017-04-14 07:56:12 +01:00
Joe Watkins bd32837acf Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #74433 Wrong reflection on the Normalizer methods
2017-04-13 13:21:51 +01:00
Fabien Villepinte f05d74feb8 Fixed bug #74433 Wrong reflection on the Normalizer methods 2017-04-13 13:21:05 +01:00
Remi Collet f70328b847 NEWS 2017-04-13 07:11:06 +02:00
Remi Collet 7f6e553f68 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  NEWS
2017-04-13 07:10:47 +02:00
Remi Collet da41afeb48 NEWS 2017-04-13 07:10:37 +02:00
Remi Collet 77e3fef64f Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #74416 Wrong reflection on DOMNode::cloneNode
2017-04-13 07:07:43 +02:00
Fabien Villepinte bc4bb7882b Fixed bug #74416 Wrong reflection on DOMNode::cloneNode 2017-04-13 07:07:24 +02:00
Christopher Jones c73bcb0c6c Add missing NEWS 2017-04-12 14:04:24 +10:00
Christopher Jones 241cf47400 Merge branch 'PHP-7.0' into PHP-7.1 2017-04-12 14:03:34 +10:00
Christopher Jones f4a41fe750 Fixed uninitialized data causing random crash (Dmitry) 2017-04-12 14:02:46 +10:00
Christopher Jones 28ddfbb892 Add missing NEWS 2017-04-12 13:23:19 +10:00
Anatol Belski a334da8b17 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix misleading typo in identifiers
2017-04-11 13:49:19 +02:00
Anatol Belski 8bba2df2eb Fix misleading typo in identifiers 2017-04-11 13:48:04 +02:00
Joe Watkins 8bbdbd063e Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fixed bug #74413 wrong reflection on SQLite3::enableExceptions
2017-04-11 12:15:24 +01:00
Joe Watkins b74b325aea fixed bug #74413 wrong reflection on SQLite3::enableExceptions 2017-04-11 12:14:25 +01:00
Xinchen Hui d44eacab07 Update NEWS 2017-04-11 18:46:57 +08:00
Xinchen Hui 87e6e1982b Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #74408 (Endless loop bypassing execution time limit)
2017-04-11 18:46:41 +08:00
Xinchen Hui eb03f16442 Fixed bug #74408 (Endless loop bypassing execution time limit) 2017-04-11 18:46:16 +08:00
Anatol Belski 3dc9279188 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix re2c version comparison
2017-04-11 11:37:03 +02:00
Anatol Belski dd17659b86 fix re2c version comparison 2017-04-11 11:03:24 +02:00
Matt Ficken 873c505ad9 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix #74410 by calling WaitForMultipleObjects() instead of MsgWaitForMultipleObjects()
2017-04-11 01:56:54 -07:00
Matt Ficken 76c9b58431 Fix #74410 by calling WaitForMultipleObjects() instead of
MsgWaitForMultipleObjects()
2017-04-11 01:54:57 -07:00
Sebastian Bergmann 25c941807b Merge branch 'PHP-7.0' into PHP-7.1 2017-04-11 08:28:55 +02:00
Sebastian Bergmann 7cdf520319 Fix bug #74409 2017-04-11 08:27:17 +02:00
Nikita Popov 9493ebbab2 Merge branch 'PHP-7.0' into PHP-7.1 2017-04-10 22:26:35 +02:00
Nikita Popov 6e23f2bceb Forgot to commit test file... 2017-04-10 22:26:14 +02:00
Nikita Popov 1df3099f2f Merge branch 'PHP-7.0' into PHP-7.1 2017-04-10 22:11:47 +02:00
Nikita Popov 6f950e83eb Fix JMPZ+JMP => NOP+JMP optimization 2017-04-10 22:09:34 +02:00
Joe Watkins 8c53c346d4 Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0
* 'PHP-7.0' of git.php.net:/php-src:
  Fixed bug #74402 (segfault on random_bytes, bin2hex, openssl_seal)
2017-04-10 12:51:17 +01:00
Joe Watkins 5c518f47e4 Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:/php-src:
  Update NEWS
  Fixed bug #74402 (segfault on random_bytes, bin2hex, openssl_seal)
2017-04-10 12:51:00 +01:00
Joe Watkins 6a84762816 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #74404 (wrong reflection on DateTimeZone::getTransitions)
2017-04-10 12:49:44 +01:00
Joe Watkins d9e2f80375 Fixed bug #74404 (wrong reflection on DateTimeZone::getTransitions) 2017-04-10 12:48:51 +01:00
Xinchen Hui 394c53889f Update NEWS 2017-04-10 19:03:27 +08:00
Xinchen Hui 3431132f18 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #74402 (segfault on random_bytes, bin2hex, openssl_seal)
2017-04-10 19:03:09 +08:00
Xinchen Hui 42e576ace2 Fixed bug #74402 (segfault on random_bytes, bin2hex, openssl_seal) 2017-04-10 19:02:50 +08:00
Joe Watkins 68b312db7d Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:/php-src:
  Fixed condition check
  Fixed condition check
  another place
  Fixed issue #2466 Invalid integer constant expression error in php.h
2017-04-10 08:07:52 +01:00
Joe Watkins e642375764 Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0
* 'PHP-7.0' of git.php.net:/php-src:
  Fixed condition check
  Fixed issue #2466 Invalid integer constant expression error in php.h
2017-04-10 08:07:24 +01:00
Joe Watkins c961beb5de Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #74400 (phpdbg comparing socket function to int)
2017-04-10 08:06:11 +01:00
Joe Watkins 60b68f19f0 Fixed bug #74400 (phpdbg comparing socket function to int) 2017-04-10 08:05:31 +01:00
Xinchen Hui 9398f15efd Fixed condition check 2017-04-10 14:48:31 +08:00
Xinchen Hui 65d77812fc Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed condition check
2017-04-10 14:47:42 +08:00
Xinchen Hui 4bebcb84ad Fixed condition check 2017-04-10 14:47:24 +08:00
Xinchen Hui d65459f4eb another place 2017-04-10 14:42:48 +08:00
Xinchen Hui 8277111eee Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed issue #2466 Invalid integer constant expression error in php.h
2017-04-10 14:41:48 +08:00
Xinchen Hui 66411ee62e Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0
* 'PHP-7.0' of git.php.net:/php-src:
  fix news
  Fix of Bug #74383: Wrong reflection on Phar::running
2017-04-10 14:41:29 +08:00
Xinchen Hui d2923ec1e5 Fixed issue #2466 Invalid integer constant expression error in php.h 2017-04-10 14:40:44 +08:00
Joe Watkins 1b6f784dd6 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix news
2017-04-10 06:46:04 +01:00
Joe Watkins a93832f414 fix news 2017-04-10 06:44:20 +01:00
Joe Watkins 9fe4d2d9cb Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix of Bug #74383: Wrong reflection on Phar::running
2017-04-10 06:32:40 +01:00
Mitch Hagstrand d9a05807d2 Fix of Bug #74383: Wrong reflection on Phar::running 2017-04-10 06:32:15 +01:00
Mitch Hagstrand 775afd5e2d Fix of Bug #74383: Wrong reflection on Phar::running 2017-04-10 06:24:57 +01:00
Xinchen Hui 9c7cb2cdcd Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0
* 'PHP-7.0' of git.php.net:/php-src:
  Add NEWS
  Resolve bug #74188 (undefined statics raising with ?? operator)
  Fixed bug #72071: Prevent Max-Age from being negative
  Update NEWS with OpenSSL 1.1.0 support info
  Add OpenSSL 1.1.0 support to PHP 7.0
2017-04-10 11:49:44 +08:00
Xinchen Hui bb5535bd38 Update NEWS 2017-04-10 11:45:12 +08:00
Xinchen Hui c32281d406 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #74379 (syntax error compile error in libmagic/apprentice.c)
2017-04-10 11:44:50 +08:00
Xinchen Hui 341ff7119f Fixed bug #74379 (syntax error compile error in libmagic/apprentice.c) 2017-04-10 11:44:41 +08:00
Xinchen Hui 3144222c7b Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Missed NEWS
2017-04-10 11:22:37 +08:00
Xinchen Hui a87ee7c57b Missed NEWS 2017-04-10 11:22:08 +08:00
Nikita Popov 6db59ee0e0 Merge branch 'PHP-7.0' into PHP-7.1
[skip ci]
2017-04-09 15:57:15 +02:00
Nikita Popov 67283007ec Add NEWS entries
[skip ci]
2017-04-09 15:56:49 +02:00
Nikita Popov 75b83ec2fd Add NEWS 2017-04-09 15:52:37 +02:00
Nikita Popov 515e1e0cea Merge branch 'PHP-7.0' into PHP-7.1 2017-04-09 15:35:44 +02:00
Thomas Punt 744c4a5592 Resolve bug #74188 (undefined statics raising with ?? operator) 2017-04-09 15:29:31 +02:00
Nikita Popov 84ef6fa80d Merge branch 'PHP-7.0' into PHP-7.1 2017-04-09 13:14:57 +02:00
Craig Duncan ba6561d3cc Fixed bug #72071: Prevent Max-Age from being negative 2017-04-09 13:14:40 +02:00
andrewnester 1ce355abb6 Fixed #74298 - IntlDateFormatter->format() doesn't return microseconds/fractions 2017-04-09 12:56:21 +02:00
Jakub Zelenka a813cebff0 Merge branch 'PHP-7.0' into PHP-7.1 2017-04-07 19:29:46 +01:00
Jakub Zelenka 948ad747d7 Update NEWS with OpenSSL 1.1.0 support info 2017-04-07 19:27:25 +01:00
Jakub Zelenka cdc33251d2 Add OpenSSL 1.1.0 support to PHP 7.0 2017-04-07 19:21:33 +01:00
Xinchen Hui 7a796d18ee Fixed bug #74353 (Segfault when killing within bash script trap code) 2017-04-07 16:15:36 +08:00
Xinchen Hui d3198aa5a1 Update NEWS 2017-04-07 15:21:44 +08:00
Xinchen Hui e656455eae Remove unused var 2017-04-07 15:21:19 +08:00
Xinchen Hui 39327b90e3 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix invalid free of persistent results on error/connection loss in mysqlnd (bug 74376)

Conflicts:
	ext/mysqlnd/mysqlnd_ps.c
2017-04-07 15:20:53 +08:00
Yussuf Khalil 27120d4412 Fix invalid free of persistent results on error/connection loss in mysqlnd (bug 74376) 2017-04-05 20:57:03 +02:00
Anatol Belski adc49b1d18 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Revert "extend skip section"
2017-04-04 16:23:49 +02:00
Anatol Belski 4ca3468e78 Revert "extend skip section"
This reverts commit 5136048064.

This is not needed anymore wrt dst handling fix
2017-04-04 16:21:23 +02:00
Anatol Belski 3438e62b30 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix possible out of bounds buffer access
2017-04-03 15:22:04 +02:00
Anatol Belski feeb35e438 fix possible out of bounds buffer access 2017-04-03 15:20:32 +02:00
Anatol Belski 2ec54af8df fix buffer overflow 2017-04-03 14:22:23 +02:00
Nikita Popov fe46a7da78 Fixed bug #74340 2017-04-02 13:30:35 +02:00
Nikita Popov c8034514ed Fixed bug #74361 2017-04-02 13:19:32 +02:00
Nikita Popov 32dcc1eef0 Merge branch 'PHP-7.0' into PHP-7.1 2017-04-02 01:08:24 +02:00
Martin Hujer 670041b60e Fix opcache.max_accelerated_files doc in php.ini
As stated in docs: https://secure.php.net/manual/en/opcache.configuration.php#ini.opcache.max-accelerated-files, the maximum is now 1000000
> The maximum value is 100000 in PHP < 5.5.6, and 1000000 in later versions.
2017-04-02 01:05:26 +02:00
Moritz Fain 46d286574b Fixed bug #74341
Added support for ASN.1 UTCTime without seconds part (being 11 characters
long instead of 13).

Additionally, fixed incorrect handling of DST on systems without gmtoff.
2017-04-02 01:04:32 +02:00
Anatol Belski dfb4875850 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update sdk version for appveyor
2017-03-31 01:43:46 +02:00
Anatol Belski e0102f81aa update sdk version for appveyor 2017-03-31 01:42:46 +02:00
Joe Watkins 6373ce7c1b Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix bug #74343 compile fails on solaris 11 with system libgd
2017-03-30 16:28:37 +01:00
Joe Watkins ef3140e544 fix bug #74343 compile fails on solaris 11 with system libgd 2017-03-30 16:27:40 +01:00
Markus Staab 22881e06e2 fixed typo 2017-03-29 09:10:42 +02:00
Markus Staab 175b2d8910 fixed typo 2017-03-29 09:10:41 +02:00
Remi Collet cec720857a relax more this test 2017-03-29 07:38:40 +02:00
Remi Collet 012dc336a6 Fix buid with system libsqlite, see bug #74217
SQLITE_DETERMINISTIC only exists in recent version
e.g. missing on 3.7 which is the default on RHEL/CentOS-7
and probably others (wheezy have 3.7, jessie 3.8...)
2017-03-29 07:25:01 +02:00
Remi Collet d11211fb53 relax test failing in fast computer 2017-03-29 07:01:14 +02:00
Ben Scholzen d896878ad5 Let MessageFormatter and IntlDateFormatter accept DateTimeImmutable as well 2017-03-29 00:20:46 +02:00
Nikita Popov d2bae4ecad Merge branch 'PHP-7.0' into PHP-7.1 2017-03-28 22:08:58 +02:00
Nikita Popov d6f70f0ee3 Disable block pass for large functions
(Backport of 7ea261685f to 7.0.)
2017-03-28 22:07:37 +02:00
Joe Watkins e38310a151 prepare next 2017-03-28 15:22:10 +01:00
Anatol Belski 2a5e631e31 update NEWS 2017-03-28 13:14:51 +02:00
Anatol Belski 279d1efbdb Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS
  Revert "Fixed bug #61471"
2017-03-28 13:13:24 +02:00
Anatol Belski 5c93a31804 update NEWS 2017-03-28 13:12:27 +02:00
Anatol Belski ef8632c9dc Revert "Fixed bug #61471"
This reverts commit 80c8d84af3.
2017-03-28 13:06:38 +02:00
Anatol Belski 888fd16411 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  prepare next
2017-03-28 11:49:46 +02:00
Anatol Belski ddad991c18 prepare next 2017-03-28 11:49:04 +02:00
Anatol Belski 0c3dcabc69 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS
2017-03-28 11:44:13 +02:00
Anatol Belski 6f2d33a239 update NEWS 2017-03-28 11:43:54 +02:00
Anatol Belski 5b12d08e1f update NEWS 2017-03-28 11:43:02 +02:00
Anatol Belski 6508320936 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  deps updated, cherry-pick 88642decf9
  add test for bug #74230
2017-03-27 19:42:24 +02:00
Anatol Belski ee8b5de5a0 deps updated, cherry-pick 88642decf9 2017-03-27 19:38:20 +02:00
Anatol Belski 6da475367a add test for bug #74230 2017-03-27 19:33:51 +02:00
x-xiang e9e860a05b Don't retain mt_rand() seeds across requests
In particular, this prevents manual seeding of mt_rand() to leak
across requests.
2017-03-27 19:02:39 +02:00
Derick Rethans 727b21c839 Merge branch 'PHP-7.0' into PHP-7.1 2017-03-27 18:01:30 +01:00
Derick Rethans 1f8fc0fb56 Forgot to update the output in the test too 2017-03-27 18:01:22 +01:00
Anatol Belski b8714a8b37 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  always use staging deps for CI, that's what we have a CI for as well
2017-03-27 18:49:59 +02:00
Anatol Belski 867c29caf0 always use staging deps for CI, that's what we have a CI for as well 2017-03-27 18:07:16 +02:00
Derick Rethans f326cfc513 Merge branch 'PHP-7.0' into PHP-7.1 2017-03-27 11:28:35 +01:00
Derick Rethans eb5d4bcd4f Fixed test for #33415 due to data fixes. 2017-03-27 11:28:16 +01:00
Derick Rethans 1f9e5cc2bc Updated to version 2017.2 (2017b) 2017-03-24 12:25:26 +00:00
Derick Rethans eb13003f6c Updated to version 2017.2 (2017b) 2017-03-24 12:25:25 +00:00
Derick Rethans fe5ef147b6 Empty merge 2017-03-24 12:25:25 +00:00
Derick Rethans ee49d4b4be Added a test case to make sure microseconds work. 2017-03-24 11:39:32 +00:00
Nikita Popov e3e3547627 Merge branch 'PHP-7.0' into PHP-7.1 2017-03-23 22:49:51 +01:00
Nikita Popov d719b46222 Fix sequencing UB 2017-03-23 22:48:45 +01:00
Nikita Popov f5951cc81b Fix lineno for AST_ZVAL nodes 2017-03-23 22:48:41 +01:00
Sara Golemon 7835e2ebc5 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix bug where `yield from` is captured too greedily
2017-03-23 13:38:58 -07:00
Sara Golemon 0fb640c717 Fix bug where yield from is captured too greedily
In the following piece of code:

```php
function from1234($x) {
  return $x;
}
function foo($x) {
  yield from1234($x);
}
```

The statement inside foo is taken as `yield from` `1234($x)`
which is neither the intent, nor even legal syntax for an fcall.

Do a lookahead for breaking non-label characters after the
`yield from` and only accept it if they occur.
2017-03-23 13:31:06 -07:00
Dmitry Stogov a0331127fe Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed uninitialized data
2017-03-23 18:59:56 +03:00
Dmitry Stogov 1517fdb36c Fixed uninitialized data 2017-03-23 18:59:27 +03:00
Anatol Belski 78bacbadfb Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  adjust deps dir naming scheme
2017-03-23 13:14:17 +01:00
Anatol Belski 1dbef2e27a adjust deps dir naming scheme
not principal, just to have it same way as everywhere
2017-03-23 13:00:14 +01:00
Anatol Belski 9e3672eaef Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  explicitly ignore php.ini for proc open tests
2017-03-21 12:44:36 +01:00
Anatol Belski bc2b500d3e explicitly ignore php.ini for proc open tests
In some cases, when an environment is unclean, tests might get stuck fe
when some incorrect ini file is loaded. As the test depends on the core
only, it is safer to explicitly ignore the ini. Any ini can be passed in
the cmd itself, if needed.
2017-03-21 12:39:40 +01:00
Derick Rethans 2b7c3831cd Fix for #73837: "new DateTime()" with a cast to double 2017-03-20 17:48:15 +00:00
Jakub Zelenka 7dd52cbcdd Merge branch 'PHP-7.0' into PHP-7.1 2017-03-20 16:08:16 +00:00
Jakub Zelenka 6d066dc421 Lower timeout in test for but #72333 2017-03-20 16:07:12 +00:00
Nikita Popov f2c35fdda8 Merge branch 'PHP-7.0' into PHP-7.1 2017-03-17 20:20:43 +01:00
Nikita Popov 2e83082605 Fix bug #74265 2017-03-17 20:19:40 +01:00
Jakub Zelenka ebc75dab50 Merge branch 'PHP-7.0' into PHP-7.1 2017-03-17 19:08:26 +00:00
Jakub Zelenka df135ffa7a Make test 002 for bug #65538 not to use https in cafile 2017-03-17 19:07:32 +00:00
Jakub Zelenka b0ba8c68cd Merge branch 'PHP-7.0' into PHP-7.1 2017-03-17 18:12:37 +00:00
Jakub Zelenka 53e2c9158d Consume data by server in test for bug #72333
Client should be able to write more data and prevent time out
2017-03-17 18:11:50 +00:00
Nikita Popov 893bf7ecdd Merge branch 'PHP-7.0' into PHP-7.1 2017-03-17 13:35:50 +01:00
Nikita Popov 183cd048f1 Fix AST start lineno for list nodes
If the node is initialized with children, check if a child has a
lower start lineno, similar to what we do for fixed-sized nodes
as well.
2017-03-17 13:35:24 +01:00
Nikita Popov 7ea261685f Disable block pass for large functions
This is the last fix for bug #74250.
2017-03-17 12:49:20 +01:00
Jakub Zelenka 3becfb9be4 Merge branch 'PHP-7.0' into PHP-7.1 2017-03-16 18:12:54 +00:00
Jakub Zelenka 0c8ad36d92 Make test for bug #72333 a bit more reliable 2017-03-16 18:11:56 +00:00
Sebastian Bergmann ccc35d1903 Fugbix typo 2017-03-16 19:10:07 +01:00
Nikita Popov 052aa466e1 Further optimize worklist management
Instead of always popping the first elements, do multiple complete
iterations of the worklist until it is empty.
2017-03-16 18:11:27 +01:00
Nikita Popov e60515f3b8 Slightly optimize worklist management
Avoid scanning the worklist twice on every iteration.
2017-03-16 17:32:27 +01:00
Nikita Popov f1f68b60f5 Optimize DJ spanning tree back-edge check
Instead of walking the DJ spanning tree upwards, record entry and
exit times during the DFS and use these to determine whether CJ
edges are sp-back edges.
2017-03-16 17:26:20 +01:00
Nikita Popov 6633e8492e Sort blocks in loop identification
The previous implementation was doing O(blocks*levels) iterations,
which for a linear-ish domtree is O(blocks^2). Avoid this by sorting
the blocks by decreasing level upfront.
2017-03-16 16:49:36 +01:00
Nikita Popov 63e59c75a5 Merge branch 'PHP-7.0' into PHP-7.1 2017-03-16 12:57:36 +01:00
Adam Saponara 98f4ce9363 Return FALSE if error_log fails to write all bytes 2017-03-16 12:56:36 +01:00
Nikita Popov 9331be7d6a Use call_map to avoid linear call lookup 2017-03-16 12:33:57 +01:00
Nikita Popov 2bba4a0d7f Fix bug #69676 2017-03-15 19:49:02 +01:00
Bob Weinand f3ab4c1a08 Merge branch 'PHP-7.0' into PHP-7.1 2017-03-15 00:09:42 +01:00
Matt Bonneau 7fba8bda4c Fixed bug #74240 (deflate_add can allocate too much memory) 2017-03-15 00:08:32 +01:00
Bob Weinand 3d4e954518 Merge branch 'PHP-7.0' into PHP-7.1 2017-03-14 22:17:10 +01:00
Bob Weinand 8be63ce0e2 Fix stream context changes leaking into copies of previous context 2017-03-14 22:15:41 +01:00
Jakub Zelenka b4f0174e5c Merge branch 'PHP-7.0' into PHP-7.1 2017-03-14 18:46:29 +00:00
Jakub Zelenka b9d3dbc84e Merge branch 'bug72333' into PHP-7.0 2017-03-14 18:43:39 +00:00
Jakub Zelenka 960e5cde02 Replace NEWS entry for #74159 with #72333
The #74159 is duplicate
2017-03-14 18:41:23 +00:00
Jakub Zelenka ba70478a21 Skip bug74159 test for OpenSSL lower than 1.0.1 2017-03-14 18:13:57 +00:00
Jakub Zelenka 8e5d080d54 Tidy up test for bug72333 2017-03-14 18:13:57 +00:00
Jakub Zelenka f0e67d1a56 Speed up test for bug72333
It reliably fails without the xp_ssl.c so it is good with smaller usleep
2017-03-14 18:13:57 +00:00
Jakub Zelenka 411f4b1b6f Fix indent and add comment 2017-03-14 18:13:57 +00:00
Jakub Zelenka 760ff21bf3 Tidy up setting of SSL_MODE_RELEASE_BUFFERS 2017-03-14 18:13:57 +00:00
Jakub Zelenka 53cc72ef86 Remove extra SSL mode settings 2017-03-14 18:13:57 +00:00
Jakub Zelenka 17e9fc9bfe Fix bug #72333 (fwrite() on non-blocking SSL sockets does not work) 2017-03-14 18:13:57 +00:00
Anatol Belski 7018a0502f Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update binary sdk tools version for appveyor
2017-03-13 12:32:46 +01:00
Anatol Belski 8e45583006 update binary sdk tools version for appveyor 2017-03-13 12:31:31 +01:00
Remi Collet 1ffb1b9597 rely on provided openssl.cnf to avoid possible failure with system defaults 2017-03-13 08:17:42 +01:00
andrewnester fbf0e0587f Implement FR #74217: deterministic sqlite functions 2017-03-12 17:03:00 +01:00
Nikita Popov 280e8dafe4 Merge branch 'PHP-7.0' into PHP-7.1 2017-03-10 18:20:58 +01:00
Nikita Popov 29ee3e3c49 Fixed bug #73960 2017-03-10 18:20:32 +01:00
Xinchen Hui 9f263c257a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #74218 (ArrayIterator error message is confusing)
2017-03-10 15:16:01 +08:00
Xinchen Hui c398198c0a Fixed bug #74218 (ArrayIterator error message is confusing) 2017-03-10 15:15:31 +08:00
Sara Golemon 7cb3e90162 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Add NEWS entry for bab0b99f
2017-03-09 11:56:54 -08:00
Sara Golemon 9b16d4c999 Add NEWS entry for bab0b99f 2017-03-09 11:56:06 -08:00
Nikita Popov 305f3c2b76 Merge branch 'PHP-7.0' into PHP-7.1 2017-03-09 20:48:24 +01:00
Nikita Popov 177f87cf05 Fixed bug #73370
If len=0 malloc() is allowed to return NULL.
2017-03-09 20:47:06 +01:00
Nikita Popov 314ef0ff69 Merge branch 'PHP-7.0' into PHP-7.1 2017-03-09 17:32:01 +01:00
Thomas Orozco 247ce052cd Fixed bug #71003: Add PDO::MYSQL_ATTR_SSL_VERIFY_SERVER_CERT 2017-03-09 17:31:21 +01:00
Nikita Popov 6635639b75 Merge branch 'PHP-7.0' into PHP-7.1 2017-03-09 16:45:28 +01:00
mcq8 b224e74267 Fixed bug #72096 Swatch time value incorrect for dates before 1970 2017-03-09 16:44:02 +01:00
Joe Watkins 8599ce4f18 Fix bug #74149 static embed SAPI linkage error 2017-03-09 07:43:58 +00:00
andrewnester 8f799137d7 Fixed bug #74058
Fall back from get_property_ptr_ptr to read_property if offsetGet
is overridden.
2017-03-09 00:10:00 +01:00
Sara Golemon 1a19b97ac3 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Detect invalid port in xp_socket parse ip address
2017-03-07 12:11:22 -08:00
Sara Golemon bab0b99f37 Detect invalid port in xp_socket parse ip address
For historical reasons, fsockopen() accepts the port and hostname
separately: fsockopen('127.0.0.1', 80)

However, with the introdcution of stream transports in PHP 4.3,
it became possible to include the port in the hostname specifier:

fsockopen('127.0.0.1:80')
Or more formally: fsockopen('tcp://127.0.0.1:80')

Confusing results when these two forms are combined, however.
fsockopen('127.0.0.1:80', 443) results in fsockopen() attempting
to connect to '127.0.0.1:80:443' which any reasonable stack would
consider invalid.

Unfortunately, PHP parses the address looking for the first colon
(with special handling for IPv6, don't worry) and calls atoi()
from there.  atoi() in turn, simply stops parsing at the first
non-numeric character and returns the value so far.

The end result is that the explicitly supplied port is treated
as ignored garbage, rather than producing an error.

This diff replaces atoi() with strtol() and inspects the
stop character.  If additional "garbage" of any kind is found,
it fails and returns an error.
2017-03-07 12:10:53 -08:00
Anatol Belski b8f75e75f6 sync with the incremental and inter-file analysis option
available as of cppcheck 1.77
2017-03-07 15:27:57 +01:00
Nikita Popov 8a6281455e Merge branch 'PHP-7.0' into PHP-7.1 2017-03-07 13:17:33 +01:00
Nikita Popov 549a30d2cd Fix out of bounds access in gc_find_additional_buffer() 2017-03-07 13:16:06 +01:00
Dmitry Stogov d9231b1667 Fixed pointer allignment 2017-03-07 10:18:34 +03:00
Dmitry Stogov b273a8cbe4 Ensure pointer alignment. 2017-03-07 09:48:18 +03:00
Dmitry Stogov 6158b517c4 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed file-cache (Zend/tests/unused_shared_static_variables.phpt)
2017-03-03 16:12:41 +03:00
Dmitry Stogov 648b756f35 Fixed file-cache (Zend/tests/unused_shared_static_variables.phpt) 2017-03-03 16:10:46 +03:00
Anatol Belski f844c0880d Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  sync NEWS for bug #74159
2017-03-02 20:46:39 +01:00
Anatol Belski c082c92b7e sync NEWS for bug #74159 2017-03-02 20:45:15 +01:00
Anatol Belski 1d4248af42 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  improve signal globals consistency check for TS
2017-03-02 20:34:48 +01:00
Anatol Belski 18f7e26257 improve signal globals consistency check for TS
Seems when we receive TERM, TLS is destroyed completely. In that case,
not only signal globals, but the entire globals array doesn't exist
anymore.
2017-03-02 20:27:27 +01:00
Anatol Belski 494fc16184 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  do not try to handle signals, when globals are inconsistent
2017-03-02 16:41:43 +01:00
Anatol Belski c7b2c698d0 do not try to handle signals, when globals are inconsistent 2017-03-02 16:40:38 +01:00
Nikita Popov bf8c463f5b Merge branch 'PHP-7.0' into PHP-7.1 2017-03-02 12:36:13 +01:00
somedaysummer fab5ce347c PHP bug #74004
Fix for DOMDocument loadHTML and loadHTMLFile ignore LIBXML_NOWARNING
and LIBXML_NOERROR flags.
2017-03-02 12:35:42 +01:00
Derick Rethans a7ff583e7e Merge branch 'PHP-7.0' into PHP-7.1 2017-03-02 11:28:09 +00:00
Derick Rethans cf60f26da6 Fixed tests after tzdb removed abbreviations 2017-03-02 11:28:02 +00:00
Derick Rethans 61e9b7354f Make sure we anchor this test to February 2017-03-02 11:27:44 +00:00
Nikita Popov bc1807dbe2 Merge branch 'PHP-7.0' into PHP-7.1 2017-03-02 12:13:38 +01:00
Mitch Hagstrand 29333550d2 Fix bug73858.phpt to work in months without 31 days
Used hardcoded months in bug73858.phpt rather than the current and previous
month.
2017-03-02 12:13:06 +01:00
Christopher Jones 9f09c810f5 Update NEWs 2017-03-02 15:34:47 +11:00
Christopher Jones 06e5ec9e32 Merge branch 'PHP-7.0' into PHP-7.1 2017-03-02 15:33:25 +11:00
Christopher Jones e80ea04c79 Fixed bug #54379 (PDO_OCI: UTF-8 output gets truncated)
This was a modification of an incomplete PR #2276.
2017-03-02 15:28:01 +11:00
Derick Rethans 1b16fb594f Updated to version 2017.1 (2017a) 2017-03-01 20:07:51 +00:00
Derick Rethans dfcb11d7d1 Updated to version 2017.1 (2017a) 2017-03-01 20:07:51 +00:00
Derick Rethans 36d8c1b182 Empty merge 2017-03-01 20:07:51 +00:00
Remi Collet 2f955d5d0a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  make type consistent with glob_t.gl_pathc
2017-03-01 17:02:42 +01:00
Remi Collet 53a08fd07d make type consistent with glob_t.gl_pathc 2017-03-01 17:01:58 +01:00
Sara Golemon c5727a30cf Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix potential crash when setting invalid declare value
2017-02-28 17:17:41 -08:00
Sara Golemon 868930e079 Fix potential crash when setting invalid declare value
Using a non-literal expression in a declare value can cause the
compiler to crash trying to turn that AST node into a usable zval.

There was an existing test for such values using 'encoding',
but that didn't crash because it's handled by the lexer
rather than being compiled.

Trying to use a non-literal with ticks reproduces the crash.
2017-02-28 17:08:23 -08:00
Remi Collet 3006d1de5b make test slower again 2017-02-28 11:36:24 +01:00
Joe Watkins 55bcef1751 prepare 7.1.4 2017-02-28 09:08:05 +00:00
Anatol Belski 52393daa3a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  prepare next
2017-02-28 09:47:56 +01:00
Anatol Belski 21a05b0418 prepare next 2017-02-28 09:46:11 +01:00
Joe Watkins 585ea4cda0 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Revert "fix crash in phpdbg shutdown process when opcache is loaded"
2017-02-27 19:21:37 +00:00
Joe Watkins c564924d31 Revert "fix crash in phpdbg shutdown process when opcache is loaded"
This reverts commit 008fb28eaf.
2017-02-27 19:21:10 +00:00
Joe Watkins 7aa59a4440 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix crash in phpdbg shutdown process when opcache is loaded
2017-02-27 17:55:14 +00:00
Joe Watkins 008fb28eaf fix crash in phpdbg shutdown process when opcache is loaded 2017-02-27 17:54:48 +00:00
Xinchen Hui 59acca2062 Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:/php-src:
  Improve fix for bug #73807
2017-02-26 12:06:29 +08:00
Xinchen Hui 6a584cf318 Fixed bug #74157 (Segfault with nested generators) 2017-02-26 12:05:56 +08:00
Nikita Popov 846bea7f05 Merge branch 'PHP-7.0' into PHP-7.1 2017-02-25 12:57:53 +01:00
Nikita Popov bbfa1b6419 Improve fix for bug #73807
At least on some architectures memmove() on FreeBSD does not
short-curcuit if src==dst. Check for it explicitly to avoid
quadratic copying.
2017-02-25 12:55:14 +01:00
Xinchen Hui 36fcc4cb5d Fixed bug #74164 (PHP hangs when an invalid value is dynamically passed to typehinted by-ref arg) 2017-02-25 12:00:42 +08:00
Xinchen Hui d1f36d6d8e Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:/php-src:
  Fix bug #73127
  Support run or test target invoked within debugger
  Update test for bug #74159
  Update NEWS
  Fix bug #74159
2017-02-25 11:10:37 +08:00
Nikita Popov f678b0eae2 Merge branch 'PHP-7.0' into PHP-7.1 2017-02-24 23:22:24 +01:00
Grundik eac8166bd4 Fix bug #73127
gost-crypto hash was incorrect if input data contained long 0xFF
sequence, due to a carry-propagation bug.
2017-02-24 23:20:49 +01:00
Anatol Belski 0ceedea2cc Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Support run or test target invoked within debugger
2017-02-24 19:41:30 +01:00
Anatol Belski 9450e23b32 Support run or test target invoked within debugger
Useful, as it gets all the environment produced by the makefile. For the
test target, it might make sense to have the child process debug plugin
for VS installed.
2017-02-24 19:37:16 +01:00
Aaron Piotrowski 531fbb88f5 Merge branch 'PHP-7.0' into PHP-7.1 2017-02-23 22:56:04 -06:00
Aaron Piotrowski ff8a6b1232 Update test for bug #74159 2017-02-23 22:24:59 -06:00
Aaron Piotrowski c05c65ac80 Merge branch 'PHP-7.0' into PHP-7.1 2017-02-23 21:19:46 -06:00
Aaron Piotrowski cc10515056 Update NEWS 2017-02-23 21:10:14 -06:00
Aaron Piotrowski e9873d9853 Fix bug #74159
Thanks to @brzuchal for the patch to xp_ssl.c and @DaveRandom for helping debug the problem.
2017-02-23 20:59:43 -06:00
Xinchen Hui afca29c436 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed typo (it should be typo)
2017-02-23 13:58:51 +08:00
Xinchen Hui d2f384a47b Fixed typo (it should be typo) 2017-02-23 13:58:08 +08:00
Xinchen Hui be60d159b6 Add test only (bug doesn't exists in 7.1) 2017-02-23 12:47:15 +08:00
Xinchen Hui 002680d0d5 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #74152 (if statement says true to a null variable)
2017-02-23 12:47:04 +08:00
Xinchen Hui 330a7b62c3 Fixed bug #74152 (if statement says true to a null variable) 2017-02-23 12:33:17 +08:00
Xinchen Hui 48fcc5ddc2 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #74148 (ReflectionFunction incorrectly reports the number of arguments)
2017-02-23 11:02:37 +08:00
Xinchen Hui 1d4eead995 Fixed bug #74148 (ReflectionFunction incorrectly reports the number of arguments) 2017-02-23 11:02:23 +08:00
Remi Collet d444e017fb Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  report about OpenSSL 1.1 not supported during configure
2017-02-22 08:40:22 +01:00
Remi Collet 015a80ef7b report about OpenSSL 1.1 not supported during configure 2017-02-22 08:39:07 +01:00
Joe Watkins 46d0933668 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  pull-request/2393:
    stop fpm make install clobbering dot d configuration
2017-02-22 06:48:48 +00:00
Coenraad Loubser 9eaf551c86 pull-request/2393:
stop make install from clobbering default dot d configuration
2017-02-22 06:47:23 +00:00
Dmitry Stogov 500232ef35 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  too many dashes
2017-02-21 10:48:21 +03:00
Dmitry Stogov 593a4d8fe9 too many dashes 2017-02-21 10:47:48 +03:00
Dmitry Stogov 508d78ce5e Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Increase WSDL cache version (7.0 wsdl cache is incomatible with PHP-5) Include WSDL cache version number into file name
2017-02-21 10:42:42 +03:00
Dmitry Stogov bd7e5c1548 Increase WSDL cache version (7.0 wsdl cache is incomatible with PHP-5)
Include WSDL cache version number into file name
2017-02-21 10:41:20 +03:00
Remi Collet dd9701c414 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix test for libzip 1.2.0
2017-02-19 17:02:16 +01:00
Remi Collet c836ad1c7e fix test for libzip 1.2.0 2017-02-19 17:02:00 +01:00
Anatol Belski ac64eea9e6 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  initialize valid_symbol_table, important for the main thread
2017-02-18 18:03:55 +01:00
Anatol Belski 1623ef10c9 initialize valid_symbol_table, important for the main thread
to prevent php_errormsg population on invalid symlol_table
2017-02-18 17:58:17 +01:00
andrewnester 15b8b124ae Fixed #74099 - Memory leak with openssl_encrypt() 2017-02-17 21:23:16 +01:00
Nikita Popov c240feb7f4 Merge branch 'PHP-7.0' into PHP-7.1 2017-02-17 18:44:02 +01:00
Benjamin Robin 513582814b Fixed bug #74105
If getrandom syscall is unavailable (ENOSYS), try to fallback on
/dev/urandom.
2017-02-17 18:42:35 +01:00
Xinchen Hui aa1d92e3e5 Unused var 2017-02-17 12:22:59 +08:00
Nikita Popov 9ca43b873a Merge branch 'PHP-7.0' into PHP-7.1 2017-02-16 17:36:03 +01:00
Ondřej Surý 61e59db99d Disable RTLD_DEEPBIND when compiling with AddressSanitizer (-fsanitize=address).
The AddressSanitizer doesn't support RTLD_DEEPBIND resulting in
erratic errors when deinitializing phar module and possibly others.

Clang use __has_feature() macro to indicate compilation with
AddressSanitizer while gcc uses __SANITIZE_ADDRESS__ define.

Fixes bug #73677.
2017-02-16 17:35:29 +01:00
Nikita Popov 976225ef23 Merge branch 'PHP-7.0' into PHP-7.1 2017-02-16 17:28:05 +01:00
Nikita Popov cf3ef36323 Fix memory errors in url rewriter
Strings aren't terminated here...
2017-02-16 17:24:07 +01:00
Nikita Popov a381b61f03 Merge branch 'PHP-7.0' into PHP-7.1 2017-02-16 17:00:21 +01:00
Nikita Popov 708973c9bd Fix autoload_func_info destruction
Can't reference the function ptr after the closure has been
destroyed.
2017-02-16 16:59:17 +01:00
Nikita Popov f741f9b656 Merge branch 'PHP-7.0' into PHP-7.1 2017-02-16 12:47:12 +01:00
Mitch Hagstrand 3b91ed112f Make the ftp and stream tests more reliable.
The tests can sometimes fail because it chooses a passive port for ftp that
is already in use. This makes the test attempt multiple times to find a free
port.
2017-02-16 12:46:55 +01:00
Nikita Popov 5432d6f982 Add json dep to test 2017-02-16 12:45:24 +01:00
Anatol Belski bf4fdda1a8 [ci skip] update NEWS 2017-02-15 16:35:49 +01:00
Anatol Belski f1b36e7e35 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  [ci skip] update NEWS
2017-02-15 16:35:11 +01:00
Anatol Belski e79754dee3 [ci skip] update NEWS 2017-02-15 16:33:49 +01:00
Anatol Belski 8ad75bec97 skip test
The code path not available on Windows.
2017-02-15 16:12:34 +01:00
Anatol Belski 2a61e5495a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #74090 stream_get_contents maxlength>-1 returns empty string
2017-02-15 14:49:58 +01:00
Anatol Belski 89a5bd6750 Fixed bug #74090 stream_get_contents maxlength>-1 returns empty string 2017-02-15 11:22:47 +01:00
Xinchen Hui f53ea4cd60 Fixed test in travis 2017-02-15 17:31:27 +08:00
Xinchen Hui 8d94d5d942 Make it slower 2017-02-15 15:27:21 +08:00
Xinchen Hui dad5281a89 Fixed test 2017-02-15 14:49:02 +08:00
Xinchen Hui 6767ef05a5 Add a test for hard_timeout(bug #74093) 2017-02-15 13:51:45 +08:00
Xinchen Hui 1242f53ddb Workaround to fix bug #74093 (Maximum execution time of n+2 seconds exceed not written in error_log)
Use a different exit code for hard_timeout, 124 is used by linux
timeout:http://man7.org/linux/man-pages/man1/timeout.1.html
"If the command times out, and --preserve-status is not set, then exit with status 124"
2017-02-15 12:27:56 +08:00
Xinchen Hui 930ce02048 Update NEWS 2017-02-13 19:17:51 +08:00
Xinchen Hui 9df7cc3e68 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug  #73989 (PHP 7.1 Segfaults within Symfony test suite)
2017-02-13 19:17:09 +08:00
Xinchen Hui 3917350531 Fixed bug #73989 (PHP 7.1 Segfaults within Symfony test suite) 2017-02-13 19:16:17 +08:00
Nikita Popov 134d0b33a3 Merge branch 'PHP-7.0' into PHP-7.1 2017-02-12 22:03:31 +01:00
Nikita Popov eb1373e509 Revert "Fixed bug #74035"
This reverts commit 9ffc6ca62f.
2017-02-12 22:02:39 +01:00
Derick Rethans d28df113d5 Merge branch 'PHP-7.0' into PHP-7.1 2017-02-12 20:19:02 +00:00
Derick Rethans f0519f4837 Upgrade timelib to 2017.01
This fixes:

- Fixed bug #72719 (Relative datetime format ignores weekday on sundays only).
- Fixed bug #73294 (DateTime wrong when date string is negative).
- Fixed bug #73489 (wrong timestamp when call setTimeZone multi times with UTC
  offset).
- Fixed bug #73858 (first/last day of' flag is not being reset).
- Fixed bug #73942 ($date->modify('Friday this week') doesn't return a Friday
  if $date is a Sunday).
- Fixed bug #74057 (wrong day when using "this week" in strtotime).
2017-02-12 20:17:01 +00:00
Xinchen Hui b96c5b14b9 Update NEWS 2017-02-12 20:36:32 +08:00
Xinchen Hui b56114e8fb Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #74084 (Out of bound read - zend_mm_alloc_small)

Conflicts:
	Zend/zend_operators.c
2017-02-12 20:36:18 +08:00
Xinchen Hui 26fdebc63b Fixed bug #74084 (Out of bound read - zend_mm_alloc_small) 2017-02-12 20:34:08 +08:00
Nikita Popov 98fceaf61e Merge branch 'PHP-7.0' into PHP-7.1 2017-02-12 12:50:14 +01:00
andrewnester 01c1afa79f Fixed bug #74021 2017-02-12 12:48:18 +01:00
Xinchen Hui 5a1bb3891a Update NEWS 2017-02-12 18:56:36 +08:00
Xinchen Hui 6649aebb89 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed #73496 (Invalid memory access in zend_inline_hash_func)
2017-02-12 18:56:11 +08:00
Xinchen Hui ee25eb0eae Fixed #73496 (Invalid memory access in zend_inline_hash_func)
no test script is added because it requre too much memory
2017-02-12 18:55:19 +08:00
Nikita Popov 479d7c3f4d Merge branch 'PHP-7.0' into PHP-7.1 2017-02-12 00:20:06 +01:00
Nikita Popov 981c58705a run-tests: Exit 1 on BORKED tests 2017-02-12 00:19:36 +01:00
Nikita Popov 9fb2812b56 Merge branch 'PHP-7.0' into PHP-7.1 2017-02-12 00:15:46 +01:00
Adam Saponara 7e5cf2aa19 Fixed bug #73118 2017-02-12 00:14:59 +01:00
Nikita Popov 6d5ea20e0b Merge branch 'PHP-7.0' into PHP-7.1 2017-02-12 00:06:35 +01:00
Denis Yeldandi 9814be4bc2 Fixed bug #69860 2017-02-12 00:06:04 +01:00
Anatol Belski bf2627e58c add missing datatype as sync for 5113909 2017-02-11 14:51:15 +01:00
Derick Rethans 5113909259 Fixed bug #73837 ("new DateTime()" sometimes returns 1 second ago value). 2017-02-11 11:10:01 +00:00
Xinchen Hui 808a11041d Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed typo
2017-02-11 00:01:38 +08:00
Xinchen Hui db7c0badd4 Fixed typo 2017-02-11 00:01:09 +08:00
Xinchen Hui 47f1e0817a Update NEWs 2017-02-10 14:26:18 +08:00
Xinchen Hui 0b7fa040e9 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #74019 (Segfault with list)
2017-02-10 14:25:29 +08:00
Xinchen Hui 185304a61e Fixed bug #74019 (Segfault with list) 2017-02-10 14:24:01 +08:00
Nikita Popov f352c50026 Merge branch 'PHP-7.0' into PHP-7.1 2017-02-08 01:10:48 +01:00
Zheng SHAO 80c8d84af3 Fixed bug #61471 2017-02-08 01:10:13 +01:00
Nikita Popov 8417a3be38 Merge branch 'PHP-7.0' into PHP-7.1 2017-02-08 01:00:46 +01:00
dreamsxin 7a0adb4cd2 Add #ifndef restrict 2017-02-08 01:00:35 +01:00
Nikita Popov bb9adc4c52 Merge branch 'PHP-7.0' into PHP-7.1 2017-02-08 00:53:36 +01:00
Christian Schmidt 714d825b62 Fix detection of isnan and isinf
The isnan() and isinf() are C99 macros not functions.

Also fix is_infinite(-INF) in case isinf is not defined.
2017-02-08 00:53:18 +01:00
Anatol Belski 189ea77101 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  use some dynamically generated NAN as well
2017-02-07 13:18:38 +01:00
Anatol Belski 044dd30440 use some dynamically generated NAN as well 2017-02-07 13:16:30 +01:00
Anatol Belski 265c53dbbf Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  switch to smart str conversion routine to hide exact NAN type
2017-02-07 12:03:21 +01:00
Anatol Belski fd521a22f7 switch to smart str conversion routine to hide exact NAN type
see https://github.com/php/php-src/pull/2356#issuecomment-277564135
2017-02-07 12:01:14 +01:00
Nikita Popov 546af1966e Merge branch 'PHP-7.0' into PHP-7.1 2017-02-06 01:46:01 +01:00
Nikita Popov 8a8aa67844 Revert "Fix detection of isnan and isinf"
This reverts commit 9ea0949f43.
2017-02-06 01:45:53 +01:00
Nikita Popov 70b27b5ad8 Merge branch 'PHP-7.0' into PHP-7.1 2017-02-05 18:10:04 +01:00
Christian Schmidt 9ea0949f43 Fix detection of isnan and isinf
The isnan() and isinf() are C99 macros not functions.

Also fix is_infinite(-INF) in case isinf is not defined.
2017-02-05 18:09:04 +01:00
Andrea Faulds b87e399393 Merge branch 'PHP-7.0' into PHP-7.1 2017-02-05 01:31:42 +00:00
Andrea Faulds 21d7878690 Fix bug #73954 2017-02-05 01:30:20 +00:00
Nikita Popov f3b1ecb6c8 Merge branch 'PHP-7.0' into PHP-7.1 2017-02-03 18:42:28 +01:00
Nikita Popov dcaf4da8a6 Revert "Merge branch 'pull-request/2344' into PHP-7.0"
This reverts commit 6988d070ea, reversing
changes made to 75ad2b301a.
2017-02-03 18:42:10 +01:00
Nikita Popov 57817eb72f Merge branch 'PHP-7.0' into PHP-7.1 2017-02-03 18:30:32 +01:00
andrewnester 9ffc6ca62f Fixed bug #74035 2017-02-03 18:29:39 +01:00
Nikita Popov 8660e95b4c Fixed bug #74041 2017-02-03 17:54:39 +01:00
Joe Watkins 611952cd98 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #74004 LIBXML_NOWARNING (etc) ignored by DOMDocument::loadHTML
2017-02-03 06:12:42 +00:00
Joe Watkins 6988d070ea Merge branch 'pull-request/2344' into PHP-7.0
* pull-request/2344:
  Fixed bug #74004 LIBXML_NOWARNING (etc) ignored by DOMDocument::loadHTML
2017-02-03 06:12:05 +00:00
somedaysummer 4df993d89d Fixed bug #74004 LIBXML_NOWARNING (etc) ignored by DOMDocument::loadHTML 2017-02-03 06:08:42 +00:00
Joe Watkins e9209e15a2 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  increase wait time in timeout_variation_9.phpt by 1 second
2017-02-03 06:00:53 +00:00
Joe Watkins 75ad2b301a Merge branch 'pull-request/2359' into PHP-7.0
* pull-request/2359:
  increase wait time in timeout_variation_9.phpt by 1 second
2017-02-03 06:00:34 +00:00
Rodrigo Prado 0b56ba51d0 increase wait time in timeout_variation_9.phpt by 1 second 2017-02-03 05:57:26 +00:00
Joe Watkins a52afd27ab Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  increase wait time in timeout_variation_10.phpt by 1 second
2017-02-03 05:55:16 +00:00
Joe Watkins 25271feeb0 Merge branch 'pull-request/2360' into PHP-7.0
* pull-request/2360:
  increase wait time in timeout_variation_10.phpt by 1 second
2017-02-03 05:54:50 +00:00
Rodrigo Prado 8faf5f979c increase wait time in timeout_variation_10.phpt by 1 second 2017-02-03 05:53:28 +00:00
Nikita Popov e81f30ad1d Merge branch 'PHP-7.0' into PHP-7.1 2017-02-02 18:33:42 +01:00
Mitch Hagstrand dd9cf23457 BUG #73998: Numeric properties are not accessible from get_object_vars 2017-02-02 18:33:10 +01:00
Nikita Popov 2d1955796e Merge branch 'PHP-7.0' into PHP-7.1 2017-02-02 18:14:50 +01:00
Matěj Humpál acda2563ce Fix bug #74031
Fix incorrect parameter count for imagepng function
2017-02-02 18:13:53 +01:00
Nikita Popov d2658287fa Merge branch 'PHP-7.0' into PHP-7.1 2017-02-02 18:07:05 +01:00
Nikita Popov a15bffd105 Fix bug #73807 2017-02-02 18:06:15 +01:00
Anatol Belski 89f2dd2879 [ci skip] update NEWS 2017-02-02 14:21:31 +01:00
Anatol Belski e16d357e27 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  [ci skip] update NEWS
2017-02-02 14:20:53 +01:00
Anatol Belski 570a273807 [ci skip] update NEWS 2017-02-02 14:19:35 +01:00
Anatol Belski 9b9080e85d Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed #74022 PHP Fast CGI crashes when reading from a pfx file.
2017-02-02 13:06:31 +01:00
Anatol Belski 6fc0ae638a Fixed #74022 PHP Fast CGI crashes when reading from a pfx file. 2017-02-02 12:48:12 +01:00
Anatol Belski 0260d42f6d [ci skip] update NEWS 2017-02-02 01:35:22 +01:00
Anatol Belski 79d3a35ede Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS
2017-02-02 01:34:48 +01:00
Anatol Belski 1d7f8eb693 update NEWS 2017-02-02 01:33:41 +01:00
Anatol Belski dcc8ecad00 remove the reverted NEWS entry 2017-02-01 20:02:20 +01:00
Anatol Belski 3bc7ea9a0a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  sync NEWS with the reverted stuff
  Revert "fixed bug #50989 (DOM support for LIBXML_NOXMLDECL)"
  Revert "fix BC break introduced by #2346 (sebastianbergmann/phpunit#2454)"
2017-02-01 20:01:40 +01:00
Anatol Belski 74c95fb3fb sync NEWS with the reverted stuff 2017-02-01 20:00:32 +01:00
Anatol Belski 3446e3b749 Revert "fixed bug #50989 (DOM support for LIBXML_NOXMLDECL)"
This reverts commit 2fcf1259c6.
2017-02-01 19:59:24 +01:00
Anatol Belski 69a2e4ece2 Revert "fix BC break introduced by #2346 (sebastianbergmann/phpunit#2454)"
This reverts commit 62938bf088.
2017-02-01 19:59:18 +01:00
Joe Watkins 46de334452 Revert "Inheritance checks should not ignore parents if these implement an interface"
This reverts commit b67eb3440b.
2017-02-01 18:34:14 +00:00
Joe Watkins 648238da5c Revert "Added tests demonstrating the same effect with abstracts"
This reverts commit c11b2b809d.
2017-02-01 18:33:47 +00:00
Dmitry Stogov ddf41b505c Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  typo
2017-02-01 17:37:40 +03:00
Dmitry Stogov 3f89b630b4 typo 2017-02-01 17:36:55 +03:00
Dmitry Stogov 8f7f8d3f9b Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fixed macro
2017-02-01 16:05:57 +03:00
Dmitry Stogov 15e9aa1706 fixed macro 2017-02-01 16:05:33 +03:00
Anatol Belski ba358c5695 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix possible NULL dereference
2017-02-01 13:45:45 +01:00
Anatol Belski 8dfa428ccd fix possible NULL dereference 2017-02-01 13:43:33 +01:00
Anatol Belski 5a7fe51235 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  remove unused var
  use zend_string API
  Fixed bug #74005 mail.add_x_header causes RFC-breaking lone line feed
2017-02-01 12:57:02 +01:00
Anatol Belski 15404bda13 remove unused var 2017-02-01 12:49:32 +01:00
Anatol Belski 2cd0d8b711 use zend_string API 2017-02-01 12:45:19 +01:00
Anatol Belski ec43a11581 Fixed bug #74005 mail.add_x_header causes RFC-breaking lone line feed 2017-02-01 12:36:14 +01:00
Anatol Belski cd5d6efaf0 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix test for 32bits (int -> float)
2017-02-01 12:00:39 +01:00
Anatol Belski d9ca5d9637 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix test for 32bits (int -> float)
2017-02-01 11:59:44 +01:00
Remi Collet 0e21d8066b fix test for 32bits (int -> float)
(cherry picked from commit 0f1ae93bfa)
2017-02-01 11:49:52 +01:00
Remi Collet 4fe2758657 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix test for 32bits (int -> float)
2017-02-01 10:25:54 +01:00
Remi Collet aa9742d80d fix test for 32bits (int -> float) 2017-02-01 10:25:30 +01:00
Anatol Belski d5f00717bf Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  add a primitive debug facility to sendmail
2017-01-31 18:28:29 +01:00
Anatol Belski 163bb87897 add a primitive debug facility to sendmail 2017-01-31 18:25:36 +01:00
Anatol Belski 2c0c704d43 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Revert "backport 51e1da6ea1 into 7.0"
2017-01-31 14:22:30 +01:00
Anatol Belski 5b5130c4ff Revert "backport 51e1da6ea1 into 7.0"
This reverts commit 8da8756312.
2017-01-31 14:21:20 +01:00
Joe Watkins 6278a5aa7d Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:/php-src:
  bump versions for next in dev
2017-01-31 12:48:31 +00:00
Joe Watkins c34bf0015b bump versions 2017-01-31 12:48:05 +00:00
Anatol Belski 008e50a6f3 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  bump versions for next in dev
2017-01-31 11:20:10 +01:00
Anatol Belski 536b3ca1e1 bump versions for next in dev 2017-01-31 11:18:23 +01:00
Joe Watkins 390134e6c5 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  removed additional ";" from run-tests.php
2017-01-31 05:36:16 +00:00
Rodrigo Prado 543141ae3b removed additional ";" from run-tests.php 2017-01-31 05:35:58 +00:00
Anatol Belski 6a8e7d5408 update NEWS 2017-01-30 22:35:46 +01:00
Anatol Belski 7a89dd8067 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS
2017-01-30 22:35:14 +01:00
Anatol Belski f39cabe610 update NEWS 2017-01-30 22:34:14 +01:00
Sara Golemon 3475c0c035 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Securely zero the hash context key
2017-01-30 09:02:42 -08:00
Sara Golemon bf0f53270f Securely zero the hash context key 2017-01-30 08:57:17 -08:00
Anatol Belski de64adeb1d Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73983 crash on finish work with phar in cli + opcache
2017-01-30 12:46:11 +01:00
Anatol Belski 368958b3e4 Fixed bug #73983 crash on finish work with phar in cli + opcache
The file_cache_only option causes the storage to be per process,
furthermore the arena is destroyed per request. Thus, zend_string's
can't survive between request and the permanent flag should not
be set. This is already done with the file cache part, but the
persistency part is used in various scenarios and should respect
this case as well. In this particular bug, the pcre pattern cache
needs to survive between requests and uses pattern strings as hash
keys. One more case relevant here would be various situations where
the flow disables the use of shared memory.
2017-01-30 12:44:21 +01:00
Joe Watkins e6bc4f39a2 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix BC break introduced by #2346 (sebastianbergmann/phpunit#2454)
2017-01-30 11:26:37 +00:00
Joe Watkins dd227c2b23 Merge branch 'pull-request/2348' into PHP-7.0
* pull-request/2348:
  fix BC break introduced by #2346 (sebastianbergmann/phpunit#2454)
2017-01-30 11:26:02 +00:00
jhdxr 62938bf088 fix BC break introduced by #2346 (sebastianbergmann/phpunit#2454) 2017-01-30 11:25:04 +00:00
Anatol Belski f2c99e201e Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  move id initialization into ctor
2017-01-30 11:41:59 +01:00
Anatol Belski 4b1afc829c move id initialization into ctor 2017-01-30 11:40:23 +01:00
Anatol Belski 2a5a310446 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix system id initialization for multiple threads
2017-01-30 01:57:27 +01:00
Anatol Belski 2b7e5468c9 fix system id initialization for multiple threads 2017-01-30 01:54:36 +01:00
Jakub Zelenka 1dab39b9aa Merge branch 'PHP-7.0' into PHP-7.1 2017-01-29 20:44:51 +00:00
Jakub Zelenka df16579642 Try fpm path for testing in sbin as it is default target 2017-01-29 20:43:58 +00:00
Joe Watkins 366f838483 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fixed bug #50989 (DOM support for LIBXML_NOXMLDECL)
2017-01-28 08:27:53 +00:00
jhdxr 2fcf1259c6 fixed bug #50989 (DOM support for LIBXML_NOXMLDECL) 2017-01-28 08:27:05 +00:00
Joe Watkins 19fff2ece6 [ci skip] news entry for Fixed bug #73987 2017-01-28 06:46:43 +00:00
Pedro Magalhães c11b2b809d Added tests demonstrating the same effect with abstracts 2017-01-28 06:28:14 +00:00
Pedro Magalhães b67eb3440b Inheritance checks should not ignore parents if these implement an interface 2017-01-28 06:28:10 +00:00
Joe Watkins bf914ff75a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix 00version.phpt when commit message has multiple lines.
2017-01-26 11:36:36 +00:00
Mitch Hagstrand a3d3f76827 Fix 00version.phpt when commit message has multiple lines.
The environment variable "TRAVIS_COMMIT_MESSAGE" can contain multiple lines.

An example can be seen here https://travis-ci.org/php/php-src/jobs/195465293
2017-01-26 11:36:24 +00:00
Joe Watkins 2d339fa4d1 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed #73973 - debug_zval_dump() assertion error for resource consts with --enable-debug
2017-01-26 09:04:25 +00:00
andrewnester f65ae82c55 Fixed #73973 - debug_zval_dump() assertion error for resource consts with --enable-debug 2017-01-26 09:03:47 +00:00
Joe Watkins 76a7470160 Fixed bug #73994 incorrect arginfo for unpack 2017-01-26 06:58:08 +00:00
Joe Watkins e5a6de6b9d Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  [ci skip] news entry for PR #2337
2017-01-26 05:51:35 +00:00
Joe Watkins a15c1990eb [ci skip] news entry for PR #2337 2017-01-26 05:50:46 +00:00
Joe Watkins f6f2855ecd Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix bug #54382 (getAttributeNodeNS doesn't get xmlns* attributes)
  Added (failing) testcase for bug #54382
2017-01-25 20:59:37 +00:00
Arnout Boks 721a189742 Fix bug #54382 (getAttributeNodeNS doesn't get xmlns* attributes)
The fix is based on the same strategy for handling namespace
declarations as used by getAttributeNode. Note that this strategy makes
these methods not return a DOMAttr for xmlns* attributes, but an
instance of the (undocumented) class DOMNameSpaceNode. This is not
really ideal, but at least this fix makes the behavior of
getAttributeNode and getAttributeNodeNS consistent.

A follow-up action would be to investigate whether DOMNameSpaceNode can
be made into a subclass of DOMAttr (which may be hard due to the way
libxml treats namespace declarations) or document this deviating return
value for xmlns* attributes.
2017-01-25 20:59:25 +00:00
Arnout Boks 737ee0661c Added (failing) testcase for bug #54382 2017-01-25 20:59:23 +00:00
Jakub Zelenka 519b0dc886 Fix bug #73978 (openssl_decrypt triggers bug in PDO) 2017-01-25 19:55:05 +00:00
Bob Weinand d0272ef1ef Merge branch 'PHP-7.0' into PHP-7.1 2017-01-25 13:01:10 +01:00
Bob Weinand c44efbbbb1 Fix copying too much leading to potential segfault 2017-01-25 13:00:48 +01:00
Anatol Belski ec78507bd4 dirname() should not normalize paths
This is the BC piece with the case where dirname() is used with an URL.
2017-01-24 17:56:00 +01:00
Anatol Belski 403f352482 make length check more robust 2017-01-24 13:24:11 +01:00
Joe Watkins 9aad38038e Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix Bug #69865 php-fpm does not close stderr when using syslog
2017-01-23 16:56:08 +00:00
Michael Wallner 80a851b4dd Fix Bug #69865 php-fpm does not close stderr when using syslog 2017-01-23 16:55:15 +00:00
Antony Dovgal 9d7054693e use correct shift and fix slowlog bt in 7.1 2017-01-23 14:50:09 +03:00
Joe Watkins 5589df128c Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  move decl to correct place
2017-01-23 05:34:21 +00:00
Joe Watkins d636467937 move decl to correct place 2017-01-23 05:33:58 +00:00
Joe Watkins 8bda542064 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed #73969 - Fixed segmentation fault when debug_print_backtrace called
2017-01-22 16:11:57 +00:00
andrewnester 6f912f7c04 Fixed #73969 - Fixed segmentation fault when debug_print_backtrace called 2017-01-22 16:11:25 +00:00
Christoph M. Becker 4af464a0df Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Add regression test for bug #47946
2017-01-22 15:02:59 +01:00
Christoph M. Becker 71efe9d8fd Add regression test for bug #47946
This bug had already been fixed, but apparently there's no regression
test yet, so we add one.

Note that the expected image has black pixel artifacts, which are
another issue (perhaps bug #40158), and would have to be adressed
separately.
2017-01-22 15:01:01 +01:00
Joe Watkins 55393e26a5 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix intermittent segfault in GD library
2017-01-22 06:41:07 +00:00
Mitch Hagstrand e56fe7e5e7 Fix intermittent segfault in GD library
The gdIOCtx struct should be zero filled with ecalloc.
emalloc does not zero fill the struct.
2017-01-22 06:40:55 +00:00
Christoph M. Becker 722375c603 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Add myself as primary maintainer of GD
2017-01-21 18:53:43 +01:00
Christoph M. Becker 42d53f3bc0 Add myself as primary maintainer of GD 2017-01-21 18:52:34 +01:00
Christoph M. Becker 7a2497b2c5 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix #73968: Premature failing of XBM reading
2017-01-21 13:18:54 +01:00
Christoph M. Becker f67d599a01 Fix #73968: Premature failing of XBM reading
We must take into account the line padding, when we're reading XBM
files.

We deliberately ignore the potential integer overflow here, because
that would be caught by gdImageCreate() or even earlier if `bytes==0`,
what happens in libgd00094.phpt which we adapt accordingly.
2017-01-21 13:04:36 +01:00
Joe Watkins 1ff27053f9 Fix bug #73961 environmental build dependency in hash sha3 source 2017-01-21 07:45:28 +00:00
Anatol Belski 3020be675a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  backport 51e1da6ea1 into 7.0
2017-01-21 02:57:54 +01:00
Anatol Belski 8da8756312 backport 51e1da6ea1 into 7.0 2017-01-21 02:56:15 +01:00
Anatol Belski 51e1da6ea1 exclude debug code 2017-01-21 02:17:06 +01:00
Anatol Belski 6b6122a957 ensure the string for conversion is \0 terminated and integrade
additional path length check
2017-01-21 02:11:24 +01:00
Anatol Belski 95406c878a Fixed bug #73962 bug with symlink related to cyrillic directory 2017-01-20 23:45:08 +01:00
Joe Watkins d6feb2edbd Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed #73959 - lastInsertId fails to throw an exception in pdsql
2017-01-20 20:11:49 +00:00
andrewnester 21ac79e94b Fixed #73959 - lastInsertId fails to throw an exception in pdsql 2017-01-20 20:10:55 +00:00
Remi Collet d6c9f91e2e NEWS 2017-01-20 17:46:41 +01:00
Remi Collet 7ea7d3d829 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  NEWS
  Fixed bug #73965 DTrace reported as enabled when disabled
2017-01-20 17:46:24 +01:00
Remi Collet 2e3d68ed1b NEWS 2017-01-20 17:46:11 +01:00
Remi Collet f81b7df618 Fixed bug #73965 DTrace reported as enabled when disabled 2017-01-20 17:45:15 +01:00
SjonHortensius 631861e1fa Update comment, incorrect since 224aaf94
In 224aaf94; the warning was enabled; making the comment above incorrect. I've updated the comment to reflect the current code
2017-01-19 10:48:54 +00:00
Xinchen Hui 5e09031144 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed another part in ldap (bug #73933)
2017-01-19 12:23:56 +08:00
Xinchen Hui cad2598fcb Fixed another part in ldap (bug #73933) 2017-01-19 12:23:23 +08:00
Ferenc Kovacs 2efb63bf00 Merge branch 'PHP-7.0' into PHP-7.1 2017-01-19 01:22:10 +01:00
Ferenc Kovacs 8c75dbc498 Merge branch 'PHP-5.6' into PHP-7.0 2017-01-19 01:20:57 +01:00
Ferenc Kovacs cf649f59cb update NEWS 2017-01-19 01:16:31 +01:00
Nikita Popov fec3a65ba4 Merge branch 'PHP-7.0' into PHP-7.1 2017-01-18 21:20:00 +01:00
Mitch Hagstrand 8ba6d622e5 Removing zmemcheck from .gdbinit
It doesn't seem to make sense anymore
2017-01-18 21:19:48 +01:00
Joe Watkins 6d89640d55 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix bug #73949 leak in mysqli_fetch_object
2017-01-18 18:23:59 +00:00
Joe Watkins f9226f9bf3 Fix bug #73949 leak in mysqli_fetch_object 2017-01-18 18:22:57 +00:00
Joe Watkins bbe21ccf38 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Remove remnants of TSMRLS_* macro calls
2017-01-18 17:46:11 +00:00
Thomas Punt fb8486f3bd Remove remnants of TSMRLS_* macro calls 2017-01-18 17:42:45 +00:00
Joe Watkins bce548d8e6 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  DNS CAA record type implementation and tests for https://bugs.php.net/bug.php?id=73850
2017-01-18 17:23:29 +00:00
Marcus Bointon 280e9cb28d DNS CAA record type implementation and tests for https://bugs.php.net/bug.php?id=73850 2017-01-18 17:23:08 +00:00
Leigh 85589ca660 Add php_openssl_store_errors to bailouts 2017-01-18 15:02:52 +00:00
Leigh d2f07edf71 Merge branch 'PHP-7.0' into PHP-7.1 2017-01-18 14:47:49 +00:00
Leigh e7e96fe2e0 Change free to OPENSSL_free 2017-01-18 14:45:41 +00:00
Remi Collet 7673c9847b NEWS 2017-01-18 13:02:33 +01:00
Remi Collet 2ce8a4cf87 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  NEWS
  Fix #73956 Link use CC instead of CXX
2017-01-18 13:02:19 +01:00
Remi Collet 6af7753e36 NEWS 2017-01-18 13:02:03 +01:00
Remi Collet 6af22d0d3e Fix #73956 Link use CC instead of CXX 2017-01-18 13:00:49 +01:00
Thomas Punt 9977bdf9b3 Remove more TSRMLS_CC macros 2017-01-18 10:00:15 +00:00
Joe Watkins 43612e9593 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix ce comparison
2017-01-18 05:06:07 +00:00
Thomas Punt a22f181736 Fix ce comparison 2017-01-18 05:05:53 +00:00
Joe Watkins 4edaa3f1e7 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  updates to release docs
2017-01-17 20:33:44 +00:00
Joe Watkins e00c2f335c updates to release docs 2017-01-17 20:33:25 +00:00
Joe Watkins 13e6dacb6b Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixes in .gdbinit for ZE 3
2017-01-17 17:07:53 +00:00
Mitch Hagstrand db894fa6aa Fixes in .gdbinit for ZE 3
1. Fixed print_pi function
2. Fixed printing properties in ____printzv_contents
3. Added optional max length parameter in ____print_str
2017-01-17 17:07:31 +00:00
Anatol Belski 1e225a6115 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  [ci skip] sync NEWS
2017-01-17 10:57:56 +01:00
Anatol Belski 3f960255f4 [ci skip] sync NEWS 2017-01-17 10:56:17 +01:00
Anatol Belski cea050b8da Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix #73869: Signed Integer Overflow gd_io.c
  Fix #73868: DOS vulnerability in gdImageCreateFromGd2Ctx()
2017-01-17 09:35:26 +01:00
Anatol Belski 5d07438cb3 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix #73869: Signed Integer Overflow gd_io.c
  Fix #73868: DOS vulnerability in gdImageCreateFromGd2Ctx()
2017-01-17 09:33:51 +01:00
Christoph M. Becker d2274b01cb Fix #73869: Signed Integer Overflow gd_io.c
GD2 stores the number of horizontal and vertical chunks as words (i.e. 2
byte unsigned). These values are multiplied and assigned to an int when
reading the image, what can cause integer overflows. We have to avoid
that, and also make sure that either chunk count is actually greater
than zero. If illegal chunk counts are detected, we bail out from
reading the image.

(cherry picked from commit 5b5d9db3988b829e0b121b74bb3947f01c2796a1)
2017-01-17 09:30:58 +01:00
Christoph M. Becker f1b2afc9d9 Fix #73868: DOS vulnerability in gdImageCreateFromGd2Ctx()
We must not pretend that there are image data if there are none. Instead
we fail reading the image file gracefully.

(cherry picked from commit cdb648dc4115ce0722f3cc75e6a65115fc0e56ab)
2017-01-17 09:30:43 +01:00
Xinchen Hui abe094dde8 Update NEWS 2017-01-17 15:35:29 +08:00
Xinchen Hui e180e45a18 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73933 (error/segfault with ldap_mod_replace and opcache)
2017-01-17 15:35:06 +08:00
Xinchen Hui b28c2e20ca Fixed bug #73933 (error/segfault with ldap_mod_replace and opcache) 2017-01-17 15:34:19 +08:00
Stanislav Malyshev 05f2f730e6 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix bug #73648 - integer overflow in substr
2017-01-16 12:14:03 -08:00
Stanislav Malyshev d1d002fc4d Fix bug #73648 - integer overflow in substr 2017-01-16 12:11:50 -08:00
Nikita Popov 29433f9fd5 Make unserialize() ref unwrapping compatible with 7.0
Also fix output difference in merged test (unrelated).
2017-01-16 14:25:58 +01:00
Nikita Popov 590ef15f6a Merge branch 'PHP-7.0' into PHP-7.1 2017-01-16 14:12:10 +01:00
Nikita Popov e0ca519a8b Merge branch 'PHP-5.6' into PHP-7.0 2017-01-16 14:11:41 +01:00
Nikita Popov 6477bb724e Add additional serialize tests for fixed bugs
These have been fixed as a side-effect of the delayed __wakeup
patch.
2017-01-16 13:24:13 +01:00
Stanislav Malyshev 34d6b63501 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix bug #73634 - grapheme_strpos illegal memory access
  Fix typo
2017-01-16 01:18:50 -08:00
Stanislav Malyshev 6736527aeb Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix typo
2017-01-16 01:18:38 -08:00
Stanislav Malyshev 8c44d07fd4 Fix bug #73634 - grapheme_strpos illegal memory access 2017-01-16 01:18:16 -08:00
Stanislav Malyshev 50b38322b9 Fix typo 2017-01-16 00:23:06 -08:00
Joe Watkins bac4c97602 Fix bug #73939 memory allocation in signal handler when HAVE_STRUCT_SIGINFO_T 2017-01-16 04:32:27 +00:00
Joe Watkins d11bed5909 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Add test ini_set with invalid time zone
2017-01-16 04:13:26 +00:00
Niklas Keller cc9893eb44 Add test ini_set with invalid time zone
Wasn't covered before according to gcov.php.net.
2017-01-16 04:13:01 +00:00
Stanislav Malyshev ca6f679417 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix test
2017-01-15 18:42:44 -08:00
Stanislav Malyshev 2c7909697a Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix test
2017-01-15 18:42:33 -08:00
Stanislav Malyshev 814966ad33 Fix test 2017-01-15 18:42:22 -08:00
Stanislav Malyshev 19e80ef496 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Update more functions with path check
2017-01-15 17:32:37 -08:00
Stanislav Malyshev 43d0f2abc5 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Update more functions with path check
2017-01-15 17:32:26 -08:00
Stanislav Malyshev 0ab1af7d3e Update more functions with path check 2017-01-15 17:31:08 -08:00
Anatol Belski bd0569e287 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix AppVeyor failures with Opcache enabled
2017-01-15 21:18:48 +01:00
Anatol Belski 4f19bb7af6 fix AppVeyor failures with Opcache enabled
opcache_reset() only schedules the restart. Under circumstances,
the follow up requests might run uncached, until the restart
condition is met. To mitigate the false positives caused by this
behavior, any tests using opcache_reset() should not be put in
between other tests. Thus, moving the corresponding test to be
executed last.
2017-01-15 21:13:15 +01:00
Nikita Popov 6674f81027 Merge branch 'PHP-7.0' into PHP-7.1 2017-01-14 14:13:42 +01:00
Yordan Gigov 60aff0bd30 Fixed bug #69993 2017-01-14 14:13:15 +01:00
Tom Sommer e77a1dbe40 Fix bug #69061
Make mail.log append correct PHP_EOL and remove timestamp when
sending to syslog.
2017-01-14 13:53:09 +01:00
Andrey Andreev 4bf7ef0806 Add hash_hkdf() 2017-01-14 13:28:21 +01:00
Joe Watkins 687b02789e Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Added test for "opcache: print restart reason" to basic_logging.phpt
2017-01-14 07:33:08 +00:00
Mitch Hagstrand fbf655afbd Added test for "opcache: print restart reason" to basic_logging.phpt 2017-01-14 07:32:55 +00:00
Alexander Polyakov a4accc0e3e opcache: print restart reason 2017-01-13 21:34:11 +00:00
Alexander Polyakov d79b82d8ae opcache: print restart reason 2017-01-13 21:33:58 +00:00
Anatol Belski 929819aaac Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix remaining tests for Opcache runs
2017-01-13 17:21:01 +01:00
Anatol Belski aaaef22db6 fix remaining tests for Opcache runs
The fail reason here is the TMP change while both top and test
run same binary with opcache enabled.
2017-01-13 17:16:15 +01:00
Anatol Belski a7b20894e5 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  ensure the end path wouldn't contain double slashes
2017-01-13 16:54:10 +01:00
Anatol Belski 8e993b427c ensure the end path wouldn't contain double slashes 2017-01-13 16:50:05 +01:00
Anatol Belski 2ae5f2d1a5 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  templatize the resource number
2017-01-13 15:48:33 +01:00
Anatol Belski 3500262b7d templatize the resource number 2017-01-13 15:45:35 +01:00
Anatol Belski e7c3f44958 refix test 2017-01-13 15:31:10 +01:00
Anatol Belski 8d1aab2aee fix test
Same as before actulaly - the host process running with Opcache
enabled, all the intermediate scripts land in cache. So the count
can be variable, maybe even better to just test for > 0.
2017-01-13 14:40:31 +01:00
Anatol Belski 527bf4d8e6 Fix test runs with Opcache enabled PHP on top
Writing to the same file, while it's cached, is an issue.
2017-01-13 14:37:37 +01:00
Joe Watkins 19363de12f Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Increase wait time for tests involving sockets to improve Travis relability
2017-01-13 06:45:17 +00:00
Mitch Hagstrand fd92b91188 Increase wait time for tests involving sockets to improve Travis relability
1. Increased sleep time from 25ms to 50ms
2. Added sleep to shutdown handlers
2017-01-13 06:45:04 +00:00
Xinchen Hui b25be216c1 Remove redundant reference handling 2017-01-13 13:05:22 +08:00
Xinchen Hui 18f4ff4131 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73916 (zend_print_flat_zval_r doesn't consider reference)
2017-01-13 13:04:53 +08:00
Xinchen Hui 04379bcb1d Fixed bug #73916 (zend_print_flat_zval_r doesn't consider reference) 2017-01-13 13:04:37 +08:00
Anatol Belski e6632ce377 update NEWS 2017-01-12 22:45:18 +01:00
Anatol Belski aacba43056 Fixed #72898 PHP_FCGI_CHILDREN is not included in phpinfo() 2017-01-12 22:06:03 +01:00
Nikita Popov da5e09ad03 Merge branch 'PHP-7.0' into PHP-7.1 2017-01-12 21:15:57 +01:00
rfussenegger bd75f9e613 Fix bug #69899 2017-01-12 21:13:39 +01:00
Anatol Belski af2de536d3 update NEWS 2017-01-12 18:59:36 +01:00
Leigh 4f7b498d12 Fixed bug #73374
Add "0b" prefix detection to intval($str, 0). The implementation
is relatively complicated because we need to handle whitespace and
sign.
2017-01-12 18:53:28 +01:00
Anatol Belski e65760f878 Fixed bug #73904 php-cgi fails to load -c specified php.ini file 2017-01-12 17:25:26 +01:00
Mitch Hagstrand 1ee1f79e27 Fixed bug #72680 gdbinit print_cvs not prepared for PHP 7 2017-01-12 09:10:12 +00:00
Joe Watkins 6fbd61a819 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  added a note to opache.fast_shutdown why its not enabled by default in php.ini
2017-01-11 11:18:26 +00:00
Markus Staab ef42f49470 added a note to opache.fast_shutdown why its not enabled by default in php.ini 2017-01-11 11:18:10 +00:00
Joe Watkins b2782c6dc5 Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0
* 'PHP-7.0' of git.php.net:/php-src:
  Fixed bug #67707 IV not needed for ECB encryption mode, but it returns a warning
  Fixed #73907 (nextSibling property not included in var_dump of DOMNode)
  Fixed bug #61858 (DOMAttr debug info generates E_WARNING)
  Fix glob-wrapper.phpt to not fail in Windows
  Fix #73893: A hidden danger of death cycle in a function of gd
2017-01-11 08:12:51 +00:00
Joe Watkins 6d797630ab Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:/php-src:
  Fixed bug #67707 IV not needed for ECB encryption mode, but it returns a warning
  Add support for "xfail" to phpt SKIPIF sections
  Fixed #73907 (nextSibling property not included in var_dump of DOMNode)
  Fixed bug #61858 (DOMAttr debug info generates E_WARNING)
  Fix glob-wrapper.phpt to not fail in Windows
  Set a session path for this test
  Fix #73893: A hidden danger of death cycle in a function of gd
  Missing %s
  Ok, maybe Nikita is right. We should default this on.
  Missed one. This needs gc as well
  These tests expect gc to be enabled
2017-01-11 08:12:40 +00:00
Joe Watkins d5553b97d2 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #71219 configure script incorrectly checks for ttyname_r
2017-01-11 08:10:47 +00:00
Joe Watkins 51d487786c Fixed bug #71219 configure script incorrectly checks for ttyname_r 2017-01-11 08:09:10 +00:00
Nikita Popov 5999874886 Merge branch 'PHP-7.0' into PHP-7.1 2017-01-10 23:44:45 +01:00
Robrecht Plaisier d9cd2876d9 Fixed bug #67707 IV not needed for ECB encryption mode, but it returns a warning 2017-01-10 23:42:44 +01:00
Nikita Popov 5cee9dfe9a Add support for "xfail" to phpt SKIPIF sections
If SKIPIF output starts with "xfail" instead of "skip", the test
will be marked as XFAIL with the following message. Example:

    --TEST--
    Test xfailif feature
    --SKIPIF--
    <?php
    if (some_cond()) die('xfail Expected to fail!');
    ?>
    --FILE--
    ...
2017-01-10 23:32:03 +01:00
Nikita Popov 908ad3cc80 Merge branch 'PHP-7.0' into PHP-7.1 2017-01-10 23:29:43 +01:00
Arnout Boks 13edec75a3 Fixed #73907 (nextSibling property not included in var_dump of DOMNode) 2017-01-10 23:29:02 +01:00
Nikita Popov 79c0cef8ca Merge branch 'PHP-7.0' into PHP-7.1 2017-01-10 23:25:07 +01:00
Arnout Boks 07340553a5 Fixed bug #61858 (DOMAttr debug info generates E_WARNING)
It seems fair to remove this warning, given that:

* it is not documented in the official documentation
* the $specified property, which has a similar 'not implemented' status,
  also does not trigger a warning
* it apparently hinders quite a lot of people during debugging, judging by
  the number of votes on the bug
2017-01-10 23:24:34 +01:00
Nikita Popov d1bb306530 Merge branch 'PHP-7.0' into PHP-7.1 2017-01-10 23:19:30 +01:00
Nikita Popov 291e3f0762 Merge branch 'PHP-5.6' into PHP-7.0 2017-01-10 23:19:19 +01:00
Mitch Hagstrand ad9c552b12 Fix glob-wrapper.phpt to not fail in Windows 2017-01-10 23:18:52 +01:00
Rasmus Lerdorf c7ef178e86 Set a session path for this test 2017-01-10 15:18:26 -05:00
Christoph M. Becker fc46003666 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix #73893: A hidden danger of death cycle in a function of gd
2017-01-10 20:13:16 +01:00
Christoph M. Becker 15837bab8c Fix #73893: A hidden danger of death cycle in a function of gd
We remove the unused, but potentially dangerous functions.
2017-01-10 19:52:06 +01:00
Rasmus Lerdorf 9fce263f3b Missing %s 2017-01-10 13:50:49 -05:00
Rasmus Lerdorf 08c7ff0df4 Ok, maybe Nikita is right. We should default this on. 2017-01-10 12:16:45 -05:00
Rasmus Lerdorf ffd870f63d Missed one. This needs gc as well 2017-01-10 12:07:47 -05:00
Rasmus Lerdorf 47fcb75a90 These tests expect gc to be enabled 2017-01-10 11:54:49 -05:00
Joe Watkins 3c23d1b6d5 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  pull-request/1807: 	test for dns_get_record
2017-01-10 13:56:49 +00:00
Joe Watkins 6a9efa2d3e Merge branch 'pull-request/1807' into PHP-7.0
* pull-request/1807:
  test for dns_get_record
2017-01-10 13:56:26 +00:00
marcosptf dcaed51ba0 pull-request/1807:
test for dns_get_record
2017-01-10 13:55:31 +00:00
Joe Watkins 4cddc85c1f Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Prevent fd leak in readdir_r that causes false negative on readdir_r implementation when compiled with AddressSanitizer
2017-01-10 11:51:39 +00:00
Ondřej Surý 1bdffee820 Prevent fd leak in readdir_r that causes false negative on readdir_r implementation when compiled with AddressSanitizer 2017-01-10 11:51:27 +00:00
Joe Watkins aadc84f6f7 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed #73902 mention router support in usage output for php-cli
2017-01-10 06:20:56 +00:00
Joe Watkins 125ee6a68e Fixed #73902 mention router support in usage output for php-cli 2017-01-10 06:19:34 +00:00
Sara Golemon 005ba2001d Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix open_basedir check for glob:// opendir wrapper
2017-01-09 16:08:08 -08:00
Sara Golemon 69fbe3a9ad Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix open_basedir check for glob:// opendir wrapper
2017-01-09 16:07:33 -08:00
Nikita Popov 9cc34c4e3e Merge branch 'PHP-7.0' into PHP-7.1 2017-01-10 00:09:02 +01:00
Nikita Popov 69058f35f8 Un-XFAIL serialization test 2017-01-10 00:07:38 +01:00
Nikita Popov aab3f784d0 Merge branch 'PHP-7.0' into PHP-7.1 2017-01-09 23:29:33 +01:00
Leigh 14c72cc582 Fix check for linux getrandom syscall 2017-01-09 23:29:07 +01:00
Nikita Popov 61af3ed38a Merge branch 'PHP-7.0' into PHP-7.1 2017-01-09 23:22:59 +01:00
Mitch Hagstrand 9ad3413190 Add print zend string function to gdbinit 2017-01-09 23:22:49 +01:00
Nikita Popov 4d18591e59 Merge branch 'PHP-7.0' into PHP-7.1 2017-01-09 23:20:29 +01:00
Dmitry Stogov 9a159f37e1 Improved GENERATOR_CREATE opcode handler. 2017-01-09 22:24:21 +03:00
Sara Golemon 7e49e8e797 Fix open_basedir check for glob:// opendir wrapper
php_check_open_basedir() expects a local filesystem path,
but we're handing it a `glob://...` URI instead.

Move the check to after the path trim so that we're checking
a meaningful pathspec.
2017-01-09 11:02:50 -08:00
Joe Watkins 28f2959b83 Revert "set more suitable defaults for opcache in ini and code"
This reverts commit b655f2d632.

This has been deemed unsuitable for 7.0
2017-01-09 17:08:07 +00:00
Joe Watkins c2f25bd188 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update release process notes
2017-01-09 16:21:21 +00:00
Joe Watkins f1ad170a15 update release process notes 2017-01-09 16:20:48 +00:00
Joe Watkins c6ba284496 Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:/php-src:
  Fixed bug #73896 (spl_autoload() crashes when calls magic _call())
2017-01-09 15:59:40 +00:00
Joe Watkins add4f43f0e Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0
* 'PHP-7.0' of git.php.net:/php-src:
  Fixed bug #73896 (spl_autoload() crashes when calls magic _call())
2017-01-09 15:59:21 +00:00
Joe Watkins 2992f4164d Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix stub to accept user properly
2017-01-09 15:58:09 +00:00
Joe Watkins ef7e5e0d69 fix stub to accept user properly 2017-01-09 15:57:46 +00:00
Dmitry Stogov 5753a753c7 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73896 (spl_autoload() crashes when calls magic _call())
2017-01-09 15:12:22 +03:00
Dmitry Stogov 4f1b24d974 Fixed bug #73896 (spl_autoload() crashes when calls magic _call()) 2017-01-09 15:11:33 +03:00
Joe Watkins 71fe529afc merge PR #2290: enable opcache in CLI in 7.1+ 2017-01-09 11:00:05 +00:00
Joe Watkins 9727e37cae Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  set more suitable defaults for opcache in ini and code
2017-01-09 10:56:54 +00:00
Joe Watkins 63e08cbef7 Merge branch 'pull-request/2291' into PHP-7.0
* pull-request/2291:
  set more suitable defaults for opcache in ini and code
2017-01-09 10:54:57 +00:00
Markus Staab b655f2d632 set more suitable defaults for opcache in ini and code 2017-01-09 10:53:23 +00:00
Xinchen Hui 697809d425 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73854 (Always true condition in php_openssl_sockop_io)
2017-01-09 16:30:48 +08:00
Xinchen Hui f7cb79431f Fixed bug #73854 (Always true condition in php_openssl_sockop_io) 2017-01-09 16:30:00 +08:00
Joe Watkins bf6eb65673 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #72979 money_format stores wrong length on AIX
2017-01-09 05:32:50 +00:00
Joe Watkins 8dd523a216 Fixed bug #72979 money_format stores wrong length on AIX 2017-01-09 05:31:41 +00:00
Joe Watkins 0738a78c59 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update ip2long_varation2 test to skip for AIX, see bug #72973
2017-01-09 05:25:17 +00:00
Joe Watkins 8c653c163a update ip2long_varation2 test to skip for AIX, see bug #72973 2017-01-09 05:24:44 +00:00
Joe Watkins 6166a0d68d [ci skip] news entry for issue #72974 2017-01-09 05:20:42 +00:00
Joe Watkins c39f71ba9f Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed #72974 imap is undefined service on AIX
2017-01-09 05:15:34 +00:00
Joe Watkins b8215c0817 Fixed #72974 imap is undefined service on AIX 2017-01-09 05:15:21 +00:00
Joe Watkins 3b8dc330bf Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix FTP tests for Travis CI.
2017-01-09 00:36:57 +00:00
Mitch Hagstrand 47007455dc Fix FTP tests for Travis CI.
This suppresses the errors from stream_socket_server() until
server.inc will not make anymore attempts.
2017-01-09 00:36:39 +00:00
Anatol Belski d454730407 improve and generalize the recognition of a cli sapi 2017-01-08 23:54:58 +01:00
Joe Watkins c846daef28 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Use proper file extension for the README
2017-01-08 21:05:24 +00:00
Markus Staab 5b5483dc8e Use proper file extension for the README 2017-01-08 21:05:06 +00:00
Joe Watkins 230b387e8a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix 404 links in Litespeed README - Bug 73890
2017-01-08 20:28:05 +00:00
Peter Kokot 7f1247004e Fix 404 links in Litespeed README - Bug 73890 2017-01-08 20:27:48 +00:00
Anatol Belski 9a4a023771 update NEWS 2017-01-08 20:13:27 +01:00
Anatol Belski 1aa792b44b Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS
2017-01-08 20:12:53 +01:00
Anatol Belski c75287dc85 update NEWS 2017-01-08 20:11:02 +01:00
Joe Watkins 8961c78524 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  improve FPM tests (mostly for systemd build)
2017-01-08 19:03:10 +00:00
Remi Collet eb02876e74 improve FPM tests (mostly for systemd build) 2017-01-08 19:02:50 +00:00
Anatol Belski 1f22daeb0f Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  [ast] Fix exporting **= in expansion of assign op
2017-01-08 18:54:28 +01:00
Sara Golemon 5df97b339e [ast] Fix exporting **= in expansion of assign op
(cherry picked from commit 9c3865eb6a)
2017-01-08 18:43:47 +01:00
Nikita Popov b38e6a54cf Merge branch 'PHP-7.0' into PHP-7.1 2017-01-08 13:48:48 +01:00
Nikita Popov b36f4ac708 deflate_add(): Don't add unnecessary +1 to size
zend_string_realloc will do this by itself.
2017-01-08 13:47:20 +01:00
Anatol Belski 329d487e68 update NEWS 2017-01-08 01:22:00 +01:00
Anatol Belski 43b92ed5a8 move various places to the centralized OpenSSL setup routine 2017-01-08 00:25:47 +01:00
Anatol Belski bf14ecc0d8 use the new API for opaque symbol in OpenSSL 1.1.x 2017-01-08 00:25:46 +01:00
Anatol Belski df1e1fdcb9 implement basic config support for OpenSSL 1.1.x 2017-01-08 00:25:46 +01:00
Nikita Popov ac46909162 Merge branch 'PHP-7.0' into PHP-7.1 2017-01-08 00:02:33 +01:00
Nikita Popov ec1b7b933d Fix OOB read introduced by previous commit
Ooops...
2017-01-08 00:01:05 +01:00
Nikita Popov d48ff0f3f5 Merge branch 'PHP-7.0' into PHP-7.1 2017-01-07 23:55:48 +01:00
Rowan Collins 5146d9f8ac http_fopen_wrapper.c - Handle HTTP headers with varying white space
The stream handler assumed all HTTP headers contained exactly one space,
but the standard says there may be zero or more. Should fix Bug #47021,
and any other edge cases caused by a web server sending unusual spacing,
e.g. the MIME type discovered from Content-Type: can no longer contain
leading whitespace.

We strip trailing whitespace from the headers added into
$http_response_header as well.
2017-01-07 23:54:57 +01:00
Nikita Popov bb2ab75555 Merge branch 'PHP-7.0' into PHP-7.1 2017-01-07 22:54:16 +01:00
Nikita Popov a46bbdda2e Fixed bug #67583
As fcgi_request is an opaque struct as of PHP 7, expose a new API
function fcgi_end() which does fcgi_flush() with end=1 and checks/
sets the ->ended flag.
2017-01-07 22:53:28 +01:00
Nikita Popov f346bd6ee6 Rename fcgi_request.closed to .ended
"closed" refers to whether FCGI_END_REQUEST has been sent, while
the "close" operation does something entirely different. It gets
extra confusing when fcgi_is_closed() does not actually return
fcgi_request.closed...
2017-01-07 22:45:19 +01:00
Joe Watkins 201e56cd04 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Adapts the readme to the new test-possibility
2017-01-07 16:46:01 +00:00
Joe Watkins 2cb8950cc2 Merge branch '1391' into PHP-7.0
* 1391:
  Adapts the readme to the new test-possibility
2017-01-07 16:45:33 +00:00
Andreas Heigl fc777296bf Adapts the readme to the new test-possibility
This commit introduces a way to use a vagrant setup to test against a
known LDAP without the need to setup an LDAP on your own machine
2017-01-07 16:45:10 +00:00
Anatol Belski 901a551bda Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Implement github PR #1736
2017-01-07 15:40:00 +01:00
Anatol Belski 486fc0424a Implement github PR #1736
This fixes leak issues on *BSD systems, as described in the PR.
2017-01-07 15:36:14 +01:00
Anatol Belski 2fed175780 update UPGRADING 2017-01-07 12:46:45 +01:00
Anatol Belski 9845155aa2 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix wrong version
  extend UPGRADING
2017-01-07 12:44:56 +01:00
Anatol Belski 80a5ae4f53 fix wrong version 2017-01-07 12:43:56 +01:00
Anatol Belski 49a0c166f3 extend UPGRADING 2017-01-07 12:43:19 +01:00
Anatol Belski bba09d56e5 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  add 'e' flag for fopen() to enable CLOEXEC
2017-01-07 12:36:09 +01:00
Evgeniy Makhrov d0279242ce add 'e' flag for fopen() to enable CLOEXEC 2017-01-07 12:10:51 +01:00
Joe Watkins 5ae45ef993 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix memleaks from #1755 and some pre-existing ones
2017-01-07 10:15:15 +00:00
Joe Watkins b351ec8baf Merge branch 'pull-request/2283' into PHP-7.0
* pull-request/2283:
  Fix memleaks from #1755 and some pre-existing ones
2017-01-07 10:14:36 +00:00
Leigh 21f287915c Remove superfluous variable reinit 2017-01-07 09:43:05 +00:00
Joe Watkins 58273f631b Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  PR #2211 don't supress warnings in tests
2017-01-07 08:08:09 +00:00
Joe Watkins 574f7bc3d4 Merge branch '2211' into PHP-7.0
* pull-request/2211:
  PR #2211 don't supress warnings in DOM tests
2017-01-07 08:07:17 +00:00
Craig Duncan 98c2cd4311 PR #2211 don't supress warnings in tests 2017-01-07 08:06:38 +00:00
Joe Watkins f60ebd13b3 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixes for session and fpm tests in PHP7.0 branch
2017-01-07 07:10:46 +00:00
Joe Watkins 41c1d0291c Merge branch 'pull-request/2284' into PHP-7.0
* pull-request/2284:
  Fixes for session and fpm tests in PHP7.0 branch
2017-01-07 07:10:23 +00:00
Mitch Hagstrand 3401f553b9 Fixes for session and fpm tests in PHP7.0 branch
1. Increased the timeout on sapi/fpm tests to match the cli server
2. Disabled session GC in session_set_save_handler_basic.phpt
3. Fixed GC in save_handler.inc to delete files based on age
2017-01-06 19:55:57 -08:00
Anatol Belski 22ed374c9a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  /guard is also a security flag
2017-01-07 02:48:14 +01:00
Anatol Belski f98d8f6c15 /guard is also a security flag 2017-01-07 02:25:00 +01:00
Anatol Belski f7bb3b5cbd Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Revert "Test request47456.phpt for PR 1303" on PHP-7.0 and PHP-7.1
2017-01-07 02:05:37 +01:00
Mitch Hagstrand 4568618030 Revert "Test request47456.phpt for PR 1303" on PHP-7.0 and PHP-7.1
This reverts commit e55e93a1e3.
This change should only apply to master. Not PHP-7.0 or PHP-7.1
2017-01-07 02:04:03 +01:00
Anatol Belski b716a1fbef fix edge case leak 2017-01-07 01:15:49 +01:00
Anatol Belski 0f410f8087 Fixed bug #73877 readlink() returns garbage for UTF-8 paths 2017-01-07 01:09:17 +01:00
Anatol Belski f8518ba1a1 fix typo 2017-01-06 18:55:12 +01:00
Anatol Belski 043d10c345 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix typo
2017-01-06 18:54:50 +01:00
Anatol Belski 71e84e2c36 fix typo 2017-01-06 18:53:30 +01:00
Anatol Belski dccfd8ee18 update NEWS and UPGRADING 2017-01-06 18:39:47 +01:00
Anatol Belski 841689cafe Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS and UPGRADING
2017-01-06 18:37:50 +01:00
Anatol Belski 1516132167 update NEWS and UPGRADING 2017-01-06 18:32:33 +01:00
Anatol Belski 847e1f97da Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Return integer field types as native integers instead of strings
2017-01-06 18:12:52 +01:00
Dorin Marcoci 826122fa8e Return integer field types as native integers instead of strings
Use another define for better compatibility

Test case for #72583 Feature. Small optimisations.

Adjust conditional directives according to coding standards

Add more compatibility for "end of line" on multiple environements

Updated execute.phpt test after switching to integer mapping
2017-01-06 17:43:46 +01:00
Joe Watkins c50f61b9b0 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Test request47456.phpt for PR 1303
2017-01-06 16:22:58 +00:00
Mitch Hagstrand e55e93a1e3 Test request47456.phpt for PR 1303
After merging PR 1303 unmatched subpatterns are set to NULL
2017-01-06 16:22:11 +00:00
Joe Watkins 699ab98f9d fix build broken by #2124 2017-01-06 16:18:24 +00:00
Joe Watkins 46c800948e fix acinclude, messed up by bad merge #2124 2017-01-06 16:13:21 +00:00
Joe Watkins 91cf3269c2 Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:/php-src:
  Fix #70103: Fix bug 70103 when ZTS is enabled
2017-01-06 16:07:12 +00:00
Joe Watkins e114e94c5f fix broken build scripts #2124 2017-01-06 16:06:48 +00:00
Leigh 62e9e1fecd Some commentary, change free method 2017-01-06 15:49:15 +00:00
Leigh 9a0dac124e Conditionally free depending on how assignment happened 2017-01-06 15:24:37 +00:00
Leigh 053b966134 Fix memleaks from #1755 and some pre-existing ones 2017-01-06 14:58:54 +00:00
Christoph M. Becker cc75e8bca5 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix #70103: Fix bug 70103 when ZTS is enabled
2017-01-06 15:44:31 +01:00
Mitch Hagstrand ad08aa3956 Fix #70103: Fix bug 70103 when ZTS is enabled
Used snprintf to copy the basename string before it is freed
2017-01-06 15:26:17 +01:00
Joe Watkins ec0daf7913 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Use AX_CHECK_COMPILE_FLAG macro to check for -fvisibility=hidden
2017-01-06 08:14:29 +00:00
Joe Watkins ba0751a915 Merge branch 'pull-request/1809'
* pull-request/1809:
  test for function curl_multi_info_read();
2017-01-06 08:06:38 +00:00
Joe Watkins 3d50172e9e Merge branch 'pull-request/1809'
* pull-request/1809:
  test for function curl_multi_info_read();
2017-01-06 08:06:10 +00:00
Joe Watkins 2d42423953 Merge branch 'pull-request/1755'
* pull-request/1755:
  Fix bug #71519 Add 'serialNumberHex' variable to openssl_x509_parse
2017-01-06 07:43:59 +00:00
Joe Watkins 0884cffb67 Merge branch 'pull-request/1755'
* pull-request/1755:
  Fix bug #71519 Add 'serialNumberHex' variable to openssl_x509_parse
2017-01-06 07:42:57 +00:00
Joe Watkins 1c40eaaee4 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  add stream_socket_sendto test from PR #1804
2017-01-06 07:28:56 +00:00
Joe Watkins 3a79f35fdc add stream_socket_sendto test from PR #1804 2017-01-06 07:27:31 +00:00
Joe Watkins e86d355c4c Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed #69442 closing of fd incorrect when PTS enabled
2017-01-06 06:58:56 +00:00
Joe Watkins ff6b309c6f Merge branch 'pull-request/1588' into PHP-7.0
* pull-request/1588:
  Fixed #69442 closing of fd incorrect when PTS enabled
2017-01-06 06:56:50 +00:00
Joe Watkins 811dfaa57b Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #69582 session not readable by root in CLI
2017-01-06 06:07:17 +00:00
Joe Watkins b0ff9ee688 Merge branch 'pull-request/1360' into PHP-7.0
* pull-request/1360:
  Fixed bug #69582 session not readable by root in CLI
  news entry for PR #1360
2017-01-06 06:05:17 +00:00
Joe Watkins de3649e2a3 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix inappropriate warning in FPM log
2017-01-06 05:55:14 +00:00
Joe Watkins 6a03b43e5f Merge branch 'pull-request/1311' into PHP-7.0
* pull-request/1311:
  fix inappropriate warning in FPM log
2017-01-06 05:54:42 +00:00
Joe Watkins 3f89aec716 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix #70103: ZipArchive::addGlob ignores remove_all_path option
  news entry for PR #1430
2017-01-06 05:40:41 +00:00
Joe Watkins a49aaf9ab0 Merge branch 'pull-request/1430' into PHP-7.0
* pull-request/1430:
  Fix #70103: ZipArchive::addGlob ignores remove_all_path option
  news entry for PR 1430
2017-01-06 05:39:48 +00:00
Joe Watkins a1ff6e7201 Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:/php-src:
  add skip when json not loaded
2017-01-06 05:33:22 +00:00
Joe Watkins 12bbeaa45e Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0
* 'PHP-7.0' of git.php.net:/php-src:
  add skip when json not loaded
2017-01-06 05:32:55 +00:00
Joe Watkins d5a1c5a96b Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Increase realpath_cache_size default value
  add UPGRADING note for realpath_cache_size
2017-01-06 05:31:29 +00:00
Joe Watkins 8e39a27b76 Merge branch 'realpath_cache_size_update' into PHP-7.0
* realpath_cache_size_update:
  Increase realpath_cache_size default value
  add UPGRADING note regarding realpath_cache_size
2017-01-06 05:29:50 +00:00
Remi Collet d18d3e7825 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  add skip when json not loaded
2017-01-06 06:27:25 +01:00
Remi Collet 4f1335cd4c Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  add skip when json not loaded
2017-01-06 06:27:08 +01:00
Joe Watkins bebfdec0a2 Merge branch 'realpath_cache_size_update' into PHP-7.0
* realpath_cache_size_update:
  Increase realpath_cache_size default value
2017-01-06 05:25:49 +00:00
Markus Staab 49b2cbf763 Update php.ini-development 2017-01-06 05:25:13 +00:00
Markus Staab 81fb61f97c Update php.ini-production 2017-01-06 05:25:10 +00:00
Markus Staab 782b84c6d5 updated default per proposal
TODO: adjust php.ini defaults
2017-01-06 05:25:08 +00:00
Markus Staab 66b698c3cf Increase realpath_cache_size default value 2017-01-06 05:25:04 +00:00
Remi Collet db890956ec add skip when json not loaded 2017-01-06 06:23:59 +01:00
Anatol Belski 1f6a9060f9 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix deps dir for test data preparations
2017-01-06 02:37:10 +01:00
Anatol Belski a7c444b939 fix deps dir for test data preparations 2017-01-06 02:34:03 +01:00
Ferenc Kovacs 1ed188011a Merge branch 'PHP-7.0' into PHP-7.1 2017-01-06 01:50:08 +01:00
Ferenc Kovacs a43a3798d3 Merge branch 'PHP-5.6' into PHP-7.0 2017-01-06 01:48:24 +01:00
Ferenc Kovacs 3b14d7b84b 5.6.31 is next 2017-01-06 01:43:11 +01:00
Anatol Belski 460247c742 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  don't use separate deps for release branches
2017-01-06 01:29:45 +01:00
Anatol Belski 372144508c don't use separate deps for release branches 2017-01-06 01:24:41 +01:00
Christoph M. Becker e7ce861def Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix #70417: PharData::compress() doesn't close temp file
2017-01-05 18:51:04 +01:00
Christoph M. Becker 183a34a5cf Merge branch 'pull-request/2278' into PHP-7.0
* pull-request/2278:
  Fix #70417: PharData::compress() doesn't close temp file
2017-01-05 18:49:52 +01:00
Joe Watkins 4cce1e9a94 wrong version 2017-01-05 17:00:40 +00:00
Joe Watkins 3b741353e1 I am bad at counting (wrong date in news) 2017-01-05 16:56:26 +00:00
Joe Watkins e627aa9841 bump version after release 2017-01-05 16:50:52 +00:00
Christoph M. Becker 995ecffbb2 Fix #70417: PharData::compress() doesn't close temp file
According to the comment, it has not been deemed necessary to close compressed
files. However, we don't want to keep unclosed file handles to save ressources.
So we're also closing compressed archives, if they're not aliased.
2017-01-05 14:12:31 +01:00
Anatol Belski 34c1040e22 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Revert "Merge branch 'bugfix_timeout_61471' of https://github.com/axot/php-src into PHP-7.0"
2017-01-05 14:02:43 +01:00
Anatol Belski 57736cc937 Revert "Merge branch 'bugfix_timeout_61471' of https://github.com/axot/php-src into PHP-7.0"
This reverts commit a8931df672, reversing
changes made to f2f35a2b27.
2017-01-05 13:59:01 +01:00
Nikita Popov 769e17ce9b Merge branch 'PHP-7.0' into PHP-7.1 2017-01-05 11:38:17 +01:00
Nikita Popov 2022dacb99 Merge branch 'PHP-5.6' into PHP-7.0 2017-01-05 11:38:05 +01:00
Nikita Popov 900b17b15f Fix printf modifier 2017-01-05 11:37:06 +01:00
Joe Watkins c370024c2c Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix php-fpm.service.in
2017-01-05 06:54:37 +00:00
Joe Watkins b037c43497 Merge branch 'pull-request/1256' into PHP-7.0
* pull-request/1256:
  Fix php-fpm.service.in
2017-01-05 06:54:19 +00:00
Anatol Belski b7b3d50f78 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  quick fix for the base branch version parsing, not perfect still
2017-01-05 01:52:37 +01:00
Anatol Belski 2ca5aa9418 quick fix for the base branch version parsing, not perfect still 2017-01-05 01:49:36 +01:00
Anatol Belski db19cb243e Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  move dev to next
2017-01-05 01:14:27 +01:00
Anatol Belski 997d902762 move dev to next 2017-01-05 01:12:18 +01:00
Nikita Popov 49d90dcc4d Add Z_EXTRA macro
For use with u2 values which don't deserve a custom macro...
2017-01-05 00:49:19 +01:00
Nikita Popov 8d8e949369 Merge branch 'PHP-7.0' into PHP-7.1 2017-01-05 00:28:21 +01:00
Nikita Popov b47c49d7a0 Merge branch 'PHP-5.6' into PHP-7.0 2017-01-05 00:24:25 +01:00
Nikita Popov f697874e3f Add tests for delayed __wakeup() 2017-01-05 00:21:48 +01:00
Nikita Popov 0426b916df Implement delayed __wakeup 2017-01-05 00:21:48 +01:00
Joe Watkins 7b436b0c48 Merge branch 'pull-request/2274' into PHP-7.1
* pull-request/2274:
  Update copyright headers to 2017
2017-01-04 22:25:45 +00:00
Joe Watkins 125578c636 Merge branch 'pull-request/2273' into PHP-7.0
* pull-request/2273:
  Update copyright headers to 2017
2017-01-04 22:24:34 +00:00
Sammy Kaye Powers 1f620efe3c Update copyright header to 2017 in calendar.c 2017-01-04 11:24:25 -06:00
Sammy Kaye Powers dac6c639bb Update copyright headers to 2017 2017-01-04 11:23:42 -06:00
Sammy Kaye Powers 6550f3ad7e Update copyright header to 2017 in calendar.c 2017-01-04 11:15:47 -06:00
Sammy Kaye Powers 478f119ab9 Update copyright headers to 2017 2017-01-04 11:14:55 -06:00
Anatol Belski 178c7d01f2 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  switch to the beta1 SDK for AppVeyor build
2017-01-04 17:21:34 +01:00
Anatol Belski 0484c6efe0 switch to the beta1 SDK for AppVeyor build 2017-01-04 15:54:47 +01:00
Joe Watkins 26b7e2e044 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  remove duplicate test
2017-01-04 14:51:21 +00:00
Joe Watkins 0d09b98ac4 remove duplicate test 2017-01-04 14:50:59 +00:00
Joe Watkins d514f23573 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix test
2017-01-04 14:36:37 +00:00
Joe Watkins b39310c715 fix test 2017-01-04 14:36:18 +00:00
Joe Watkins 6c9164047e Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  get_defined_functions additional parameter to exclude disabled functions
  news entry for PR #1312
2017-01-04 13:36:04 +00:00
Joe Watkins 63d116e571 Merge branch 'pull-request/1312' into PHP-7.0
* pull-request/1312:
  get_defined_functions extra parameter to exclude disabled functions
  news entry for PR #1312
2017-01-04 13:34:31 +00:00
Anatol Belski b15cc7913a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix PDO tests to match SQL standard syntax and pass Firebird tests.
2017-01-03 17:54:46 +01:00
Dorin Marcoci e914abff1e Fix PDO tests to match SQL standard syntax and pass Firebird tests. 2017-01-03 17:48:52 +01:00
Anatol Belski 63d980b3c7 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  better skip on files
2017-01-03 13:27:06 +01:00
Anatol Belski 3a1ae7bb9b better skip on files
some more could be added
2017-01-03 13:25:16 +01:00
Nikita Popov 661fad7beb Merge branch 'PHP-7.0' into PHP-7.1 2017-01-03 12:18:33 +01:00
Nikita Popov b3889d4b20 Fix build 2017-01-03 12:16:35 +01:00
Vince cfd6e14842 Fix Bug #73462 - Persistent connections don't set $connect_errno
Persistent connections skipped resetting $connect_error and $connect_errno values
This adds the "clear error" line to persistent connections for consistency
2017-01-03 12:13:08 +01:00
Joe Watkins ff4e330eae Merge branch 'pull-request/1905'
* pull-request/1905:
   pack()/unpack() for Big Endian float/double and Little Endian float/double
2017-01-03 10:50:19 +00:00
Joe Watkins e42a01bcd5 Merge branch 'pull-request/1905'
* pull-request/1905:
   pack()/unpack() for Big Endian float/double and Little Endian float/double
2017-01-03 10:49:53 +00:00
Rasmus Lerdorf 19b757dacd Fix opcache test dependencies 2017-01-02 22:30:28 -08:00
Rasmus Lerdorf 608724bfe1 Fix opcache test dependencies 2017-01-02 22:21:12 -08:00
Stanislav Malyshev b9837dc183 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Use correct string release function
2017-01-02 22:08:42 -08:00
Stanislav Malyshev 68ac602b28 Use correct string release function 2017-01-02 22:08:25 -08:00
Stanislav Malyshev 0f0406a1c9 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix error reporting
2017-01-02 21:59:59 -08:00
Stanislav Malyshev ea6e54aff3 Fix error reporting 2017-01-02 21:59:44 -08:00
Stanislav Malyshev ca72faa2c5 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix #73832 - leave the table in a safe state if the size is too big.
  Fix bug #73831 - NULL Pointer Dereference while unserialize php object
2017-01-02 21:37:06 -08:00
Stanislav Malyshev a6cdefe043 Merge branch 'PHP-7.0.15' into PHP-7.0
* PHP-7.0.15:
  Fix #73832 - leave the table in a safe state if the size is too big.
  Fix bug #73831 - NULL Pointer Dereference while unserialize php object
2017-01-02 21:35:42 -08:00
Stanislav Malyshev 2075fb2b73 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix bug #73737 FPE when parsing a tag format
  Fix bug #73773 - Seg fault when loading hostile phar
  Fix bug #73825 - Heap out of bounds read on unserialize in finish_nested_data()
  Fix bug #73768 - Memory corruption when loading hostile phar
  Fix int overflows in phar (bug #73764)
2017-01-02 21:07:01 -08:00
Stanislav Malyshev 7f0de1a138 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix bug #73737 FPE when parsing a tag format
  Fix bug #73773 - Seg fault when loading hostile phar
  Fix bug #73825 - Heap out of bounds read on unserialize in finish_nested_data()
  Fix bug #73768 - Memory corruption when loading hostile phar
  Fix int overflows in phar (bug #73764)
2017-01-02 21:01:35 -08:00
Stanislav Malyshev fa2125df67 Merge branch 'PHP-5.6.30' into PHP-5.6
* PHP-5.6.30:
  Fix bug #73737 FPE when parsing a tag format
  Fix bug #73773 - Seg fault when loading hostile phar
  Fix bug #73825 - Heap out of bounds read on unserialize in finish_nested_data()
  Fix bug #73768 - Memory corruption when loading hostile phar
  Fix int overflows in phar (bug #73764)
2017-01-02 20:56:32 -08:00
Stanislav Malyshev 4cc0286f2f Fix #73832 - leave the table in a safe state if the size is too big. 2017-01-02 20:14:05 -08:00
Anatol Belski ed8fdad72b Merge branch 'PHP-7.1' of git.php.net:php-src into PHP-7.1 2017-01-03 02:24:23 +01:00
Nikita Popov 2a4d0a7a0f Fix test after mail.log change 2017-01-03 02:18:00 +01:00
Anatol Belski f44ef0ba3f Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  set exclude AppVeyor branches and ignore builds on NEWS updates
2017-01-03 02:17:44 +01:00
Anatol Belski d2298c3cec set exclude AppVeyor branches and ignore builds on NEWS updates 2017-01-03 02:15:20 +01:00
Nikita Popov a08747bb4c Merge branch 'PHP-7.0' into PHP-7.1 2017-01-03 02:13:04 +01:00
Nikita Popov e1e5caf9d4 Fix early free 2017-01-03 02:12:28 +01:00
Anatol Belski 26c944a855 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Disable pdb generation for AppVeyor
2017-01-03 01:11:41 +01:00
Anatol Belski f12f0b2bc2 Disable pdb generation for AppVeyor
It is not needed for the test runs and would speedup the compilation
phase.
2017-01-03 01:07:55 +01:00
Nikita Popov 43ed89ea31 Fix data_size decrement
We don't want to decrement the pointer...
2017-01-02 23:47:30 +01:00
Nikita Popov 737eb060db Merge branch 'PHP-7.0' into PHP-7.1 2017-01-02 23:39:35 +01:00
Nikita Popov 20c172d459 Add NEWS entries 2017-01-02 23:35:27 +01:00
Nikita Popov 593b6cd0a8 Optimize get_browser() using prefix and contains checks
Avoid expensive regex compilations by checking for prefix
and contained segments beforehand.
2017-01-02 23:31:27 +01:00
Nikita Popov b06fb88cf9 Optimize browscap loading and representation
Avoid many string duplications, use interning (browscap-local, of
course), reduce pattern size, use more compact key-value
representation, build result array only on demand.
2017-01-02 23:30:56 +01:00
Nikita Popov 76a1d3f153 Add get_browser() test against larger corpus
Testing corpus provided by Anatol against current browscap.ini lite.

About 30% of all agents are not recognized by this browscap.ini,
but this should give us decent coverage.
2017-01-02 23:30:27 +01:00
Mitch Hagstrand 0acaa97a16 Fix for nowait.phpt failing intermittently
The parent process was releasing the child semaphore
after the child process continued execution. Now
the child semaphore is released before the child
process continues execution.
2017-01-02 16:45:52 +00:00
Mitch Hagstrand c019d33267 Fix for nowait.phpt failing intermittently
The parent process was releasing the child semaphore
after the child process continued execution. Now
the child semaphore is released before the child
process continues execution.
2017-01-02 16:44:43 +00:00
vanviegen abba56f605 Fix for sporadic segfault with MYSQLI_OPT_INT_AND_FLOAT_NATIVE
Fixes bug #73800

news entry for PR #2249
2017-01-02 14:56:41 +00:00
vanviegen 732f67ee6f Fix for sporadic segfault with MYSQLI_OPT_INT_AND_FLOAT_NATIVE
Fixes bug #73800

news entry for PR #2250
2017-01-02 14:54:45 +00:00
Joe Watkins 156781baf5 news entry for PR #2267 2017-01-02 11:58:57 +00:00
Joe Watkins 243dff2057 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  news entry for PR #2267
  Fixed #67474 (getElementsByTagNameNS and default namespace)
  Add (failing) testcase for bug #67474
2017-01-02 11:58:14 +00:00
Joe Watkins 9f4d05acec news entry for PR #2267 2017-01-02 11:57:45 +00:00
Arnout Boks a8955926c2 Fixed #67474 (getElementsByTagNameNS and default namespace)
This bug was caused by the fact that dom_get_elements_by_tag_name_ns_raw
uses an empty string to filter on the default namespace (as NULL means
'no filter'), whereas in the node itself the default namespace is
signalled by nodep->ns being null.
2017-01-02 11:56:37 +00:00
Arnout Boks 19c4a2ef19 Add (failing) testcase for bug #67474 2017-01-02 11:56:33 +00:00
Joe Watkins 3e798c4a5f Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0
* 'PHP-7.0' of git.php.net:/php-src: (146 commits)
  Flush stderr on win32 in cli_log_message
  Fixed bug #73154
  FIx bug #70213
  Fix dom class can't be inherited by the internal class
  Another try at making concat_003 more reliable
  Fix flaky openssl_pkey_new test
  Make Opcache tests using the cli server more reliable
  Revert "Fix #73530: Unsetting result set may reset other result set"
  define php_ap_map_http_request_error function for older httpd only
  add old versions of httpd support
  Disable AppVeyor fast_finish
  Makes the sapi web server and curl tests more reliable
  Fixes the curl tests to be more reliable in Travis CI
  Interpretation of curl_setopt values for boolean parameters
  Fixes #65689. PDO_Firebrid / exec() does not free allocated statement.
  Fix alpn_ctx leaking in openssl
  Fixed bug #73373 (deflate_add does not verify that output was not truncated)
  Fix IS_UNDEF comparisons in opcache
  Fixed bug #73704 (phpdbg shows the wrong line in files with shebang)
  Increase timing quota for small string concat test
  ...
2017-01-02 09:44:02 +00:00
Mitch Hagstrand e077735b03 Fix nowait.phpt to no longer depend on sleeping
In Travis CI the nowait.phpt test sometimes fails because of
the usleep() not being long enough ensure proper
execution order. Instead of depending on sleeping the
test now uses two semaphores to guarantee execution order.
2017-01-02 09:43:47 +00:00
Joe Watkins 532486569a Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:/php-src:
  Flush stderr on win32 in cli_log_message
  Fixed bug #73154
2017-01-02 09:41:44 +00:00
Mitch Hagstrand b4459af025 Fix nowait.phpt to no longer depend on sleeping
In Travis CI the nowait.phpt test sometimes fails because of
the usleep() not being long enough ensure proper
execution order. Instead of depending on sleeping the
test now uses two semaphores to guarantee execution order.
2017-01-02 09:40:46 +00:00
Nikita Popov a5027d43dd Merge branch 'PHP-7.0' into PHP-7.1 2017-01-01 21:09:27 +01:00
Nikita Popov 935b5cb11e Flush stderr on win32 in cli_log_message
This allows us to unfork a bunch of tests for Windows.
2017-01-01 21:09:02 +01:00
Nikita Popov 70ca40d30f Merge branch 'PHP-7.0' into PHP-7.1 2017-01-01 19:26:36 +01:00
Nikita Popov 4877641962 Fixed bug #73154
The object that is being serialized may be destroyed during the
execution of __sleep(), so operate on a copy instead.
2017-01-01 19:24:41 +01:00
Joe Watkins 876b7b177f news entry for PR #1414 2017-01-01 14:41:20 +00:00
Joe Watkins e7d4a8ce8b Merge branch 'pull-request/1414' into PHP-7.1
* Add subject to mail.log
2017-01-01 14:39:35 +00:00
Nikita Popov 878b8f0465 Merge branch 'PHP-7.0' into PHP-7.1 2017-01-01 14:13:29 +01:00
Nikita Popov 9f560baef5 Merge branch 'PHP-5.6' into PHP-7.0 2017-01-01 14:12:26 +01:00
Nikita Popov a65ad951ad FIx bug #70213 2017-01-01 14:10:49 +01:00
Nikita Popov 2a34042323 Merge branch 'PHP-7.0' into PHP-7.1 2017-01-01 12:20:46 +01:00
dreamszhu 3c977618e1 Fix dom class can't be inherited by the internal class 2017-01-01 12:20:04 +01:00
Nikita Popov 8467c5c9bf Fix year dependent test 2017-01-01 12:15:52 +01:00
Joe Watkins e51f284c78 Revert "news entry for PR #2263"
This reverts commit 299e02c82a.
2017-01-01 06:52:59 +00:00
Joe Watkins dbfbe6261d Revert "Fix dom class can't be inherited by the internal class"
This reverts commit 705f60e481.
2017-01-01 06:52:41 +00:00
Joe Watkins 299e02c82a news entry for PR #2263 2017-01-01 06:49:42 +00:00
dreamszhu 705f60e481 Fix dom class can't be inherited by the internal class 2017-01-01 06:48:02 +00:00
Stanislav Malyshev 8d2539fa0f Fix bug #73831 - NULL Pointer Dereference while unserialize php object 2016-12-31 20:14:20 -08:00
Stanislav Malyshev 1cda0d7c2f Fix bug #73737 FPE when parsing a tag format 2016-12-31 19:31:49 -08:00
Stanislav Malyshev e5246580a8 Fix bug #73773 - Seg fault when loading hostile phar 2016-12-31 18:47:50 -08:00
Nikita Popov 242d924e59 Fix bug #73847 2016-12-31 13:33:21 +01:00
Stanislav Malyshev 16b3003ffc Fix bug #73825 - Heap out of bounds read on unserialize in finish_nested_data() 2016-12-30 16:59:46 -08:00
Stanislav Malyshev b28b8b2fee Fix bug #73768 - Memory corruption when loading hostile phar 2016-12-30 15:57:24 -08:00
Stanislav Malyshev ca46d0acbc Fix int overflows in phar (bug #73764) 2016-12-30 15:39:48 -08:00
Adam Harvey eb25e14962 Document the changes to lexical scoping in 7.1.
Fixes bug #73844 (Cannot use lexical variable $variable as a parameter
name inside array_walk()).
2016-12-30 11:39:45 -08:00
Christoph M. Becker f5bf19ee3a Update UPGRADING wrt. bug #72785 2016-12-30 14:17:38 +01:00
Christoph M. Becker 97e16ebbe2 Merge branch 'PHP-7.0' of https://git.php.net/repository/php-src into PHP-7.0
* 'PHP-7.0' of https://git.php.net/repository/php-src:
  Another try at making concat_003 more reliable
  Fix flaky openssl_pkey_new test
  Make Opcache tests using the cli server more reliable
2016-12-30 13:56:34 +01:00
Nikita Popov 2497ae031b Don't check for precise length in ecc.phpt
Again, this can be off by one.
2016-12-29 22:05:38 +01:00
Nikita Popov 12922f2a58 Merge branch 'PHP-7.0' into PHP-7.1 2016-12-29 21:41:21 +01:00
Nikita Popov 432660f73f Another try at making concat_003 more reliable
Use array_fill() for the array population loop -- this isn't the
part that is being tested and on PHP 7.0 w/o opcache this duplicates
the inner array a lot.
2016-12-29 21:39:40 +01:00
David Walker b09c2f899e Fixed bug #73783
Bug #73783 raises an issue with signal handling when using SIG_IGN.
With PHP7.1 ZEND_SIGNALS is defaulted to on, which will for all
signals set the handler as zend_signal_handler_defer.  This is
problematic for syscalls like sleep(), which will only return when the
requisite number of seconds have elapsed, or, a non-ignored signal is
raised.  In this case we want to SIG_IGN SIGCHLD, however, SIG_IGN is
only stored in the SIGG(handlers) array, and the actual system level
handler is defined.  This prevents proper signal ignoring when requeted.
2016-12-29 21:18:22 +01:00
Nikita Popov 7746ed9d5f Merge branch 'PHP-7.0' into PHP-7.1 2016-12-29 21:00:14 +01:00
Nikita Popov 78675ebd9a Fix flaky openssl_pkey_new test
Public key size may vary by one bit... switch to using %d for
key sizes.
2016-12-29 20:59:28 +01:00
Mitch Hagstrand d0fcc74110 Make Opcache tests using the cli server more reliable
Same fix already applied to ext/curl/tests/server.inc
and sapi/cli/tests/php_cli_server.inc

1. Increases the amount of time for the PHP built-in server to accept a connection
2. Outputs an error if the PHP built-in server fails
2016-12-29 20:56:45 +01:00
Christoph M. Becker f4d884dc6e Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Revert "Fix #73530: Unsetting result set may reset other result set"
2016-12-29 13:54:11 +01:00
Christoph M. Becker 88d1a2c5aa Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Revert "Fix #73530: Unsetting result set may reset other result set"

# Conflicts:
#	ext/sqlite3/sqlite3.c
2016-12-29 13:47:28 +01:00
Christoph M. Becker 2ba3b27594 Revert "Fix #73530: Unsetting result set may reset other result set"
This reverts commit eb570294a2.

That commit caused a regression, so it's probably best to revert it, and
to tackle the issue for the next minor release.
2016-12-29 12:59:04 +01:00
Xinchen Hui 716fa9c24d Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  define php_ap_map_http_request_error function for older httpd only
  add old versions of httpd support
  typo fixed
  bug fixed #61471 in apache2handler
2016-12-29 15:56:26 +08:00
Xinchen Hui a8931df672 Merge branch 'bugfix_timeout_61471' of https://github.com/axot/php-src into PHP-7.0
* 'bugfix_timeout_61471' of https://github.com/axot/php-src:
  define php_ap_map_http_request_error function for older httpd only
  add old versions of httpd support
  typo fixed
  bug fixed #61471 in apache2handler
2016-12-29 15:46:47 +08:00
Zheng SHAO 587497e3a9 define php_ap_map_http_request_error function for older httpd only 2016-12-29 16:07:05 +09:00
Zheng SHAO d92606a4be add old versions of httpd support 2016-12-29 00:41:56 +09:00
Nikita Popov d82bd3696e Merge branch 'PHP-7.0' into PHP-7.1 2016-12-27 22:22:05 +01:00
Nikita Popov f2f35a2b27 Disable AppVeyor fast_finish
As NTS and TS fail in different ways, we want to see both.
2016-12-27 22:20:40 +01:00
Nikita Popov 937115f8c5 Merge branch 'PHP-7.0' into PHP-7.1 2016-12-27 21:52:33 +01:00
Mitch Hagstrand 2d51267c07 Makes the sapi web server and curl tests more reliable
1. Increased the time for the sapi/cli/tests/php_cli_server.inc to accept connections.
2. sapi/cli/tests/php_cli_server.inc has errors messages and a `stop` function.
3. bug67429.phpt uses the `stop` function to shutdown the webserver before starting a new one.
4. Removed ext/curl/tests/bug48203_multi-win32.phpt test now that ext/curl/tests/bug48203_multi.phpt
   runs on Windows also.
2016-12-27 21:52:05 +01:00
Mitch Hagstrand 92678d1a83 Fixes the curl tests to be more reliable in Travis CI
1. Increases the amount of time for the PHP built-in server to accept a connection
2. Outputs an error if the PHP built-in server fails
3. In bug48203_multi.phpt the test no longer starts and stops multiple PHP built-in servers
2016-12-27 21:52:05 +01:00
Sara Golemon a49675faac Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Interpretation of curl_setopt values for boolean parameters
2016-12-25 22:33:03 -08:00
dedal.qq 7f29e7c678 Interpretation of curl_setopt values for boolean parameters 2016-12-25 22:32:49 -08:00
Sébastien Santoro 5d7c774bea Remove extraneous parentheses in conditions
The zend_vm_gen.php generator now checks if the condition is already
enclosed by parentheses, and them only if needed.

This fixes nine clang/llvm parentheses-equality warnings.
2016-12-25 22:17:46 -08:00
Sara Golemon fcd4c34cb3 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixes #65689. PDO_Firebrid / exec() does not free allocated statement.
2016-12-25 22:07:09 -08:00
Dorin Marcoci e926bf6507 Fixes #65689. PDO_Firebrid / exec() does not free allocated statement. 2016-12-25 22:06:20 -08:00
Bob Weinand 7b133e074c Merge branch 'PHP-7.0' into PHP-7.1 2016-12-22 23:34:51 +01:00
Bob Weinand ac1372d811 Fix alpn_ctx leaking in openssl 2016-12-22 23:34:07 +01:00
Bob Weinand 898e439333 Merge branch 'PHP-7.0' into PHP-7.1 2016-12-22 15:31:39 +01:00
Bob Weinand 8823b68c41 Fixed bug #73373 (deflate_add does not verify that output was not truncated) 2016-12-22 15:29:36 +01:00
Nikita Popov 175b9f67f6 Merge branch 'PHP-7.0' into PHP-7.1 2016-12-22 12:47:29 +01:00
Sébastien Santoro 25c96f92f4 Fix IS_UNDEF comparisons in opcache
These conditions were formerly `!q->pData` and `!p->pData`, and should
now be detected as undefined variables, using the special type IS_UNDEF.

Incidentally, this syntax raised a logical-not-parentheses compiler
warning, now gone.
2016-12-22 12:46:14 +01:00
Bob Weinand 728502fc29 Merge branch 'PHP-7.0' into PHP-7.1 2016-12-22 00:40:54 +01:00
Bob Weinand 3b2b080cbc Fixed bug #73704 (phpdbg shows the wrong line in files with shebang) 2016-12-22 00:39:24 +01:00
Nikita Popov ed0602fe31 Fix string extension in negate_num_string
Forgot to actually assign the reallocated string...
2016-12-21 22:11:17 +01:00
Nikita Popov 06699abffb Merge branch 'PHP-7.0' into PHP-7.1 2016-12-21 21:28:29 +01:00
Nikita Popov c41826d1e6 Increase timing quota for small string concat test
Test is regularly failing on Travis.
2016-12-21 21:27:47 +01:00
Nikita Popov 9afc61c214 Merge branch 'PHP-7.0' into PHP-7.1 2016-12-21 21:19:10 +01:00
David Walker 5733fd1caf Fix #73753 - Unpacked Arrays and Duplication 2016-12-21 21:18:20 +01:00
Anatol Belski 6ffa1d256f add folds 2016-12-21 17:59:45 +01:00
Anatol Belski 637436628a fix possible null dereference 2016-12-21 17:58:34 +01:00
Xinchen Hui 82988d3e41 Revert "Reorder the oplines" (Break Zend/tests/return_types/bug71092.phpt)
This reverts commit a12f43ee2c.
2016-12-21 14:24:14 +08:00
Bob Weinand 7e2146293b Merge branch 'PHP-7.0' into PHP-7.1 2016-12-21 02:42:38 +01:00
Bob Weinand becda86ae5 Fix issue with -- in phpdbg command line 2016-12-21 02:42:23 +01:00
Bob Weinand 8b06b7e266 Fixed bug #73794 (Crash (out of memory) when using run and # command separator) 2016-12-20 20:18:36 +01:00
Bob Weinand 3273f15412 Fix segfault in ZTS mode when just printing and exiting in phpdbg 2016-12-20 19:49:04 +01:00
Dmitry Stogov 43cc3d7d92 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73792 (invalid foreach loop hangs script)
2016-12-20 16:53:06 +03:00
Dmitry Stogov 3c6a2fb08c Fixed bug #73792 (invalid foreach loop hangs script) 2016-12-20 16:48:57 +03:00
Xinchen Hui 6bd41a1d47 Fixed bug #73789 (Strange behavior of class constants in switch/case block) 2016-12-20 21:01:21 +08:00
Anatol Belski 21e2836473 deliver the real cp also if a constant is passed 2016-12-20 02:40:44 +01:00
Zheng SHAO 884e2a0519 Fixed NEWS conflicts 2016-12-20 09:48:47 +09:00
Dmitry Stogov 6ea44908fb Fixed arginfo 2016-12-19 11:13:02 +03:00
Anatol Belski 8adc86a698 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS
  Compatibility with Firebird & Oracle select syntax.
2016-12-19 01:08:44 +01:00
Anatol Belski 7ef2e90197 update NEWS 2016-12-19 01:08:19 +01:00
Anatol Belski 9fb8ea58b5 update NEWS 2016-12-19 01:07:08 +01:00
Dorin Marcoci eb33d08f1e Compatibility with Firebird & Oracle select syntax. 2016-12-19 01:06:24 +01:00
Anatol Belski 680b813380 Merge branch 'PHP-7.0' into PHP-7.1 2016-12-19 00:52:01 +01:00
Anatol Belski 88c1491c6d fix proto 2016-12-19 00:50:29 +01:00
Anatol Belski f077ada348 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Cursor is not opened on singleton selects.
  fix arg spec and datatype, follow up on 73594
2016-12-18 21:55:30 +01:00
Dorin Marcoci cf46ac1179 Cursor is not opened on singleton selects.
Test case for unregistered bug on FB3 singleton selects

Set error mode to warning instead of exception.
2016-12-18 21:53:51 +01:00
Anatol Belski 3e48baa49d fix arg spec and datatype, follow up on 73594 2016-12-18 21:16:35 +01:00
Anatol Belski 7371c46518 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73594
2016-12-18 20:47:02 +01:00
Bruce Weirdan c78fd4568e Fixed bug #73594
Skip the tests when local resolver does not behave

* Added SKIPIF sections to check local resolver
* Added test to check $authns parameter
2016-12-18 20:44:33 +01:00
Nikita Popov 4ef4e34c2e Merge branch 'PHP-7.0' into PHP-7.1 2016-12-18 17:10:54 +01:00
Nikita Popov c1af9f282f Fix bug #46103 2016-12-18 17:10:19 +01:00
Nikita Popov 7d404bc3d6 Merge branch 'PHP-7.0' into PHP-7.1 2016-12-18 14:58:38 +01:00
Nikita Popov eb636fcb56 Add test for get_browser() in object mode
All other tests only check array return values...
2016-12-18 13:16:25 +01:00
Anatol Belski 59bf7f907f extend UPGRADING 2016-12-18 01:08:58 +01:00
Anatol Belski e8512ed7db update NEWS 2016-12-18 01:03:00 +01:00
Anatol Belski f86e077ec8 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix C89 compat
2016-12-17 20:46:09 +01:00
Anatol Belski 58a945cf68 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix C89 compat
2016-12-17 20:45:22 +01:00
Anatol Belski 79e47aae41 fix C89 compat 2016-12-17 20:43:32 +01:00
Anatol Belski a9e0705b64 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  replace default appveyor build version
2016-12-17 13:14:12 +01:00
Anatol Belski 0cd1c18853 replace default appveyor build version 2016-12-17 13:12:34 +01:00
Xinchen Hui aa84808e33 Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:/php-src:
  add Appveyor fast_fail
  improve error check
  turn mcrypt back on for Appveyor runs
  add build status badge
  add scripts for AppVeyor integration
  Silence warning from unhandled enum
  fix leaking streams and memory mapped files
  turn mcrypt back on for Appveyor runs
  add build status badge
  add scripts for AppVeyor integration
  Silence warning from unhandled enum
  fix leaking streams and memory mapped files
  Fix stack management in ini scanner
  chance CLI codepage, only when SAPI is initialized
2016-12-17 20:09:34 +08:00
Xinchen Hui a12f43ee2c Reorder the oplines
1. we should only do the return type checking when it is really about to
return
2. for 029.php, actually, the exception threw should be discard while it
jmp into finally(it could be observed by change the return to return an array)
3. after this fix, the test 029.phpt behavior consistently with 7.0
4. good for optimizer too
2016-12-17 20:06:18 +08:00
Zheng SHAO fb98907d2d typo fixed 2016-12-17 20:26:09 +09:00
Anatol Belski a3a8cc686a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  add Appveyor fast_fail
  improve error check
2016-12-17 11:27:17 +01:00
Anatol Belski 9afb05dcd1 add Appveyor fast_fail 2016-12-17 11:26:13 +01:00
Anatol Belski 158d11d53d improve error check 2016-12-17 11:25:06 +01:00
Zheng SHAO 9b65a10256 bug fixed #61471 in apache2handler 2016-12-17 13:37:58 +09:00
Anatol Belski c104f09d88 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  turn mcrypt back on for Appveyor runs
  add build status badge
  add scripts for AppVeyor integration
  Silence warning from unhandled enum
  fix leaking streams and memory mapped files
2016-12-17 00:14:50 +01:00
Anatol Belski 53c4c38878 turn mcrypt back on for Appveyor runs
(cherry picked from commit fca2312fbe)
2016-12-17 00:13:16 +01:00
Anatol Belski 576ed049c5 add build status badge
(cherry picked from commit 3a886c9d20)
2016-12-17 00:13:01 +01:00
Anatol Belski aeebae641e add scripts for AppVeyor integration
(cherry picked from commit c737d6fb49)
2016-12-17 00:12:49 +01:00
Sara Golemon 5004ae2b62 Silence warning from unhandled enum
(cherry picked from commit 57bbe2c140)
2016-12-17 00:12:33 +01:00
Anatol Belski 2f9e928af8 fix leaking streams and memory mapped files
(cherry picked from commit f1ff23095b)
2016-12-17 00:12:19 +01:00
Anatol Belski fca2312fbe turn mcrypt back on for Appveyor runs 2016-12-16 22:59:47 +01:00
Anatol Belski 4377546d2f add build status badge
(cherry picked from commit 3a886c9d20)
2016-12-16 22:56:23 +01:00
Anatol Belski 4a69f450ff add scripts for AppVeyor integration
(cherry picked from commit c737d6fb49)
2016-12-16 22:56:08 +01:00
Sara Golemon 587f1b2427 Silence warning from unhandled enum
(cherry picked from commit 57bbe2c140)
2016-12-16 22:55:13 +01:00
Anatol Belski 9cdf64c225 fix leaking streams and memory mapped files
(cherry picked from commit f1ff23095b)
2016-12-16 22:55:02 +01:00
Nikita Popov a32829f909 Merge branch 'PHP-7.0' into PHP-7.1 2016-12-16 20:55:08 +01:00
Nikita Popov fa92a16e46 Fix stack management in ini scanner 2016-12-16 20:54:46 +01:00
Anatol Belski b91d7f186a chance CLI codepage, only when SAPI is initialized
This finally solves issues with DBSC console codepages, and in
general improves the console codepage switching. When
module_initialized, all the possible encoding INI settings with
regard to possible modifications are set, and that's the
right moment to switch the console codepage in regard to I/O.
CJK glyphs might take more than 1 cell, so then  visual issues
can occur, when switching console codepage back and forth. Users
are free to use ini_set(), but any visual issues are then up to
the user responsibility.
2016-12-16 16:49:18 +01:00
Xinchen Hui 8ba7878f1b Add an assertion 2016-12-16 11:09:22 +08:00
Xinchen Hui 7cef66c635 Fixed bug #73746 (Method that returns string returns UNKNOWN:0 instead) 2016-12-16 11:06:27 +08:00
Anatol Belski b441ff6cf9 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  make timing check more forgiving in these tests
2016-12-15 12:32:35 +01:00
Anatol Belski 8bc3f179ce make timing check more forgiving in these tests
Particularly on slower VMs, the sporadic fails can still happen.
The timing is kept in an uncritical range, but allows the tests
pass there. Mayby, it'd make sense to introduce a new group for
this kind of tests, so tests requiring exact time measurement
can be avoided on unsuitable environments.
2016-12-15 12:20:37 +01:00
Matteo Beccati 72fb941bd4 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Skip tests when secure_file_priv dir not writable
  Add missing UPGRADING entry. Manual is updated before 7.0 release.
2016-12-15 09:32:04 +01:00
Matteo Beccati 7c696fa886 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Skip tests when secure_file_priv dir not writable
2016-12-15 09:31:54 +01:00
Matteo Beccati 0c9324ea9b Skip tests when secure_file_priv dir not writable 2016-12-15 09:31:00 +01:00
Yasuo Ohgaki 577b081a20 Add missing UPGRADING entry. Manual is updated before 7.0 release. 2016-12-15 16:16:45 +09:00
Anatol Belski 382ec5cf9e Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  extend skip section
2016-12-14 19:56:19 +01:00
Anatol Belski 5136048064 extend skip section
The day light offset is calculated based on the system TZ, so with
an unsuitable one there's no way to workaround the false positives.
2016-12-14 19:53:55 +01:00
Nikita Popov 33e96c9d63 Merge branch 'PHP-7.0' into PHP-7.1 2016-12-14 18:11:43 +01:00
Nikita Popov f99bf70360 Partially fix bug #70492
The libmagic portion is missing.
2016-12-14 18:11:27 +01:00
Nikita Popov 2f438342ec Fixed bug #73727
Error introduced when refactoring zend_alloc code into zend_bitset.
2016-12-14 17:56:31 +01:00
Anatol Belski 1820f4b9d1 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  cleanup temporary data
2016-12-14 12:34:14 +01:00
Anatol Belski d663296e3b cleanup temporary data 2016-12-14 12:33:13 +01:00
Anatol Belski e33ec61f9c Care about intput and output encoding, as per default encoding RFC
If PHP CLI is used with programs with no Unicode support, the default
PHP console codepage might cause backward incompatible behaviors. This
is solved with this patch by separating the handling of I/O codepage.
As per https://wiki.php.net/rfc/default_encoding input_encodnig and
output_encoding are centralized INI settings, so they're used for the
purpose of adjusting the codepage. This gives user the ability to use
UTF-8 internally, while letting the system API to convert the output
to a compatible codepage. This also might solve the font issues on
systems without good true type support.

Note, that there no change to the default behavior - if input and
output encoding are not set, which is the default case, the default
charset applies to both console input and output. The patch is just
a compilment to the backward compatibility, not more and not less.
2016-12-14 02:51:29 +01:00
Nikita Popov b344832b80 Merge branch 'PHP-7.0' into PHP-7.1 2016-12-13 17:57:14 +01:00
Nikita Popov 4b2cc62e26 More fixes for bug #73089
Insert a lot more DEREFs. Some may not be necessary, but better
safe than sorry. I'm thinking the soap_hash_str_find_deref function
should become part of the zend_hash API -- we need this in many
places.
2016-12-13 17:56:38 +01:00
Andrey Hristov 9eca4dca73 Optimized memory handling of BIT fields. Less memory copies and less
memory usage.
2016-12-12 21:59:29 +02:00
Andrey Hristov 3836c2faac Merge branch 'PHP-7.0' into PHP-7.1 2016-12-12 21:52:59 +02:00
Andrey Hristov 13fc1b92ca Add a bit more test cases (edge cases) to the BIT test case 2016-12-12 21:52:36 +02:00
Andrey Hristov d494e19701 Merge branch 'PHP-7.0' into PHP-7.1 2016-12-12 21:29:06 +02:00
Andrey Hristov a881ea7d86 Add a test case to test fetching of multiple rows with bit values. 2016-12-12 21:28:33 +02:00
Andrey Hristov 2819a28ac3 Merge branch 'PHP-7.0' into PHP-7.1 2016-12-12 21:12:44 +02:00
Andrey Hristov e15c418c4c Fix off by 1 problem.
The problem was manifestated only with BIT columns and only when more than
one row was fetched. The problem was coming from the fact that in pre-7.0
times mysqlnd was using a no-copy optimization. This optimization kept the
strings (and also the BIT mask equivalents as strings) in the packet and the
zval referred to them. 7.0+ zvals cannot use no-copy and always copy. Because
of this the allocated memory for the packet was reduced by 1 by the person who
ported the driver, but the starting address of the bit area wasn't reduced.
Because of this the bit_area started at wrong address and the length decoded
wrong.
2016-12-12 21:11:02 +02:00
Anatol Belski d9fc5ea6ec Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  better way to get ACP
2016-12-12 01:56:44 +01:00
Anatol Belski 7a8774ade4 better way to get ACP 2016-12-12 01:54:22 +01:00
Anatol Belski 8199e5a7e9 adapt patch for 7.1 2016-12-12 01:50:15 +01:00
Anatol Belski e53f967ed7 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix datatype for zpp, yet a followup on bug #73679
2016-12-12 01:29:23 +01:00
Anatol Belski 3473b519c0 fix datatype for zpp, yet a followup on bug #73679 2016-12-12 01:26:06 +01:00
Anatol Belski ae91cfacdb update NEWS 2016-12-11 17:40:22 +01:00
Anatol Belski 8f6b975130 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS
2016-12-11 17:39:54 +01:00
Anatol Belski ee2625e252 update NEWS 2016-12-11 17:39:08 +01:00
Anatol Belski e6e5f06c78 improve fix for bug #73679 with new capabilities available 2016-12-11 17:25:48 +01:00
Anatol Belski fb92116a5a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73679 DOTNET read access violation using invalid codepage
2016-12-11 17:07:57 +01:00
Anatol Belski 1d80fb2cdb Fixed bug #73679 DOTNET read access violation using invalid codepage 2016-12-11 17:06:55 +01:00
Nikita Popov 2c70581338 Fix T_NUM_STRING negation
T_NUM_STRING follows the rules of symtable numeric string
conversion. If the offset isn't an integer under those rules, it
is treated as a string. This should apply to negated T_NUM_STRINGs
as well.
2016-12-11 13:33:25 +01:00
Anatol Belski 8b82e2c2fe extend errno mapping 2016-12-10 11:17:07 +01:00
Xinchen Hui 0ad804ec9b Fixed tests 2016-12-10 16:43:17 +08:00
Xinchen Hui 4eb4ec2cb1 Update NEWS 2016-12-09 22:39:42 +08:00
Xinchen Hui 09b36113b0 Fix the bug in ZEND_ASSIGN_DIM (as nikic suggest) 2016-12-09 22:30:24 +08:00
Xinchen Hui 6812721ef2 Revert "Refix bug #73686"
This reverts commit 4589386026.
2016-12-09 22:22:59 +08:00
Xinchen Hui 4589386026 Refix bug #73686 2016-12-09 16:37:22 +08:00
Xinchen Hui 6a43c61bcd Fixed bug #73646 (mb_ereg_search_init null pointer dereference) 2016-12-09 15:55:07 +08:00
Xinchen Hui 4faa540b45 Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:/php-src:
  fix uninitialized member
2016-12-09 11:41:26 +08:00
Xinchen Hui 68bdd6d018 Fixed bug #73686 (Adding settype()ed values to ArrayObject results in references) 2016-12-09 11:41:08 +08:00
Anatol Belski d46972b6ae Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix uninitialized member
2016-12-08 17:16:48 +01:00
Anatol Belski 66ad7918b8 fix uninitialized member 2016-12-08 17:15:06 +01:00
Xinchen Hui 8250b3fca1 Fixed possible false assertion failure 2016-12-08 22:04:43 +08:00
Ferenc Kovacs f8ea3e3e4c Merge branch 'PHP-7.0' into PHP-7.1 2016-12-08 07:11:11 +01:00
Ferenc Kovacs a4d6d16b3b Merge branch 'PHP-5.6' into PHP-7.0 2016-12-08 07:09:41 +01:00
Ferenc Kovacs 60da307c61 update NEWS 2016-12-08 07:05:32 +01:00
Anatol Belski 394a3593cc Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  git clean section
2016-12-08 03:24:59 +01:00
Anatol Belski ff6565462e git clean section 2016-12-08 03:24:18 +01:00
Nikita Popov 60249f4390 Fix propagation of QM_ASSIGN into VERIFY_RETURN_TYPE
VERIFY_RETURN_TYPE uses different formats for the CONST/non-CONST
cases. If we progate a CONST operand into op1, op1 should be
moved to result.
2016-12-07 23:14:46 +01:00
Adam Baratz 5a20d83be8 Remove noop param hook 2016-12-07 17:09:09 -05:00
Adam Baratz e133a2dd78 Clean up tabs and whitespace 2016-12-07 17:08:51 -05:00
Anatol Belski 8e40fdd37c update NEWS 2016-12-07 21:24:16 +01:00
Anatol Belski 68d119bcdb Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS
2016-12-07 21:23:37 +01:00
Anatol Belski 73fb2192d2 update NEWS 2016-12-07 21:22:34 +01:00
Anatol Belski 67b7c5055c Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #72931 PDO_FIREBIRD with Firebird 3.0 not work on returning statement
2016-12-07 21:07:14 +01:00
Dorin Marcoci 13ffa88e1f Fixed bug #72931 PDO_FIREBIRD with Firebird 3.0 not work on returning statement 2016-12-07 21:06:11 +01:00
Johannes Schlüter 54f526be89 Install ext/json headers 2016-12-07 17:50:05 +01:00
Anatol Belski 5b3e36fe78 fix test compat with MySQL 5.7 2016-12-07 16:04:47 +01:00
Christoph M. Becker 00ee42e385 Merge branch 'PHP-7.0' into PHP-7.1 2016-12-07 13:45:18 +01:00
Markus Staab dd77116fb0 Fixed typo in skipif error message 2016-12-07 13:35:58 +01:00
Dmitry Stogov ee15891c35 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Check if PHP is in execution state.
2016-12-07 15:12:48 +03:00
Dmitry Stogov 3c8c347fa7 Check if PHP is in execution state. 2016-12-07 15:12:18 +03:00
Nikita Popov 76c4a3db08 Fix bug #73668
Not bothering to implement special handling to get an accurate
range for this case.
2016-12-06 22:25:35 +01:00
Nikita Popov d7e7f74b24 Factor out common binary op code in range inference
Instead of repeating the same code for binary ops and their
compound assignment variants, factor the range computation out
into a separate function.
2016-12-06 22:09:44 +01:00
Anatol Belski 1c5c046d9a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS
2016-12-06 20:26:40 +01:00
Anatol Belski 991ca7f7d7 update NEWS 2016-12-06 20:25:27 +01:00
Bob Weinand 43f88f25bb Merge branch 'PHP-7.0' into PHP-7.1 2016-12-06 18:30:37 +01:00
Bob Weinand 7e12b5da71 Fixed issue getting executable lines from custom wrappers
See also krakjoe/phpdbg#161
2016-12-06 18:29:48 +01:00
Anatol Belski 308cc2e9d4 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix leak, take 2
2016-12-06 16:18:54 +01:00
Anatol Belski fee5c049a8 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix leak, take 2
2016-12-06 16:17:28 +01:00
Anatol Belski c89306ac52 fix leak, take 2 2016-12-06 16:12:39 +01:00
Anatol Belski 4e3f728701 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix leak, take on 7.x
2016-12-06 14:44:04 +01:00
Anatol Belski 9b1430140a fix leak, take on 7.x 2016-12-06 14:42:59 +01:00
Anatol Belski 8f4c006ada Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix leak, take on 5.6
2016-12-06 14:37:58 +01:00
Anatol Belski f2fc812b78 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix leak, take on 5.6
2016-12-06 14:36:52 +01:00
Anatol Belski b04d60626d fix leak, take on 5.6 2016-12-06 14:34:27 +01:00
Xinchen Hui 72891f385b Update NEWS 2016-12-06 17:33:15 +08:00
Xinchen Hui d7a759916d Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73663 ("Invalid opcode 65/16/8" occurs with a variable created with list())
2016-12-06 17:32:48 +08:00
Xinchen Hui 358bd77b23 Fixed bug #73663 ("Invalid opcode 65/16/8" occurs with a variable created with list()) 2016-12-06 17:32:32 +08:00
Dmitry Stogov 547b735d34 Micro optimizations 2016-12-06 10:01:18 +03:00
Stanislav Malyshev 28fc49a53f Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  This still leaks memory, I don't have enough knowledge in WDDX code to fix them :(
2016-12-05 22:33:42 -08:00
Stanislav Malyshev 183b4d78aa Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  This still leaks memory, I don't have enough knowledge in WDDX code to fix them :(
2016-12-05 22:33:33 -08:00
Stanislav Malyshev d7ce944cf1 This still leaks memory, I don't have enough knowledge in WDDX code to fix them :( 2016-12-05 22:32:59 -08:00
Stanislav Malyshev 619a691c7c Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix bug #73645 - int/size_t confusion
2016-12-05 22:16:42 -08:00
Stanislav Malyshev 1d59ed7524 Fix bug #73645 - int/size_t confusion 2016-12-05 22:16:00 -08:00
Stanislav Malyshev 4ae4ca45aa Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix bug #73631 - Invalid read when wddx decodes empty boolean element
2016-12-05 21:59:10 -08:00
Stanislav Malyshev 6292fe84d3 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix bug #73631 - Invalid read when wddx decodes empty boolean element
2016-12-05 21:58:55 -08:00
Stanislav Malyshev 266ecb6d0a Fix bug #73631 - Invalid read when wddx decodes empty boolean element 2016-12-05 21:40:55 -08:00
Nikita Popov 3b79f8f408 Fix bug #73654 2016-12-05 20:41:14 +01:00
Dmitry Stogov 2f0e61f4b7 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed behavior of failing compound assignments (they shouldn't change the source value when exception thrown during type converion).
2016-12-05 21:49:09 +03:00
Dmitry Stogov a983b728a7 Fixed behavior of failing compound assignments (they shouldn't change the source value when exception thrown during type converion). 2016-12-05 21:45:08 +03:00
Anatol Belski 8ad9043aa3 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix test
2016-12-04 22:45:31 +01:00
Anatol Belski eddca73ad2 fix test
This test depends on connection flags modifable from teh env,
that can affect the exact function called.
2016-12-04 22:42:39 +01:00
Anatol Belski b6f5fcfc3a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix test
2016-12-04 22:28:34 +01:00
Anatol Belski 1eb3f01c68 fix test
On Windows, either doubled backslashes or forward slashes are supported
on the server side.
2016-12-04 22:27:17 +01:00
Anatol Belski 69c3859368 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix ident
2016-12-04 20:59:56 +01:00
Anatol Belski 69fbc751ff fix ident 2016-12-04 20:59:12 +01:00
Anatol Belski 2198ce2f28 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix test
2016-12-04 17:29:22 +01:00
Anatol Belski 8e209d0435 fix test 2016-12-04 17:28:43 +01:00
Anatol Belski dfd776b326 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  enforce the test ini usage for the child process
2016-12-04 14:02:37 +01:00
Anatol Belski 10a2ceef3b enforce the test ini usage for the child process 2016-12-04 14:01:40 +01:00
Yasuo Ohgaki e34c8281fa Merge branch 'pull-request/2228' into PHP-7.1
* pull-request/2228:
  Fix session upgrade documentation
2016-12-04 17:48:55 +09:00
Tobias Schultze e15733f0b8 Fix session upgrade documentation 2016-12-04 07:33:29 +01:00
Bob Weinand ca871aaba6 Merge branch 'PHP-7.0' into PHP-7.1 2016-12-03 23:44:23 +01:00
Bob Weinand 46d708a1b6 Fix PHP-7.0 build (wrong fix for the branch) 2016-12-03 23:39:54 +01:00
Bob Weinand 146b68e022 Merge branch 'PHP-7.0' into PHP-7.1 2016-12-03 18:28:47 +01:00
Bob Weinand ffc1ef1eed Fix leak when using $this outside of object context 2016-12-03 18:28:08 +01:00
Christoph M. Becker c20299ddc4 Merge branch 'PHP-7.0' into PHP-7.1 2016-12-03 14:18:56 +01:00
Christoph M. Becker a8ec79e27f Merge branch 'PHP-5.6' into PHP-7.0 2016-12-03 14:18:00 +01:00
Adrien Crivelli cf2496140d Fix minor typo 2016-12-03 14:15:52 +01:00
Yasuo Ohgaki 0b204d60a4 Fix typo in php.ini-* comment 2016-12-03 14:23:05 +09:00
Nikita Popov 91d365f805 Merge branch 'PHP-7.0' into PHP-7.1 2016-12-02 17:03:59 +01:00
Nikita Popov 8f7325fc24 Fix leak in shift_right_function 2016-12-02 17:03:05 +01:00
Bob Weinand 7b5e89de82 Merge branch 'PHP-7.0' into PHP-7.1 2016-12-02 15:42:19 +01:00
Bob Weinand 3c1a0d75bf Fix test of wrong operator in self_xor.phpt 2016-12-02 15:41:47 +01:00
Dmitry Stogov af2d47c9c7 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Eliminated useless exception check
2016-12-02 15:40:04 +03:00
Dmitry Stogov 68558ab71d Eliminated useless exception check 2016-12-02 15:39:33 +03:00
Dmitry Stogov b3a4de65cd Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed behavior of failing compound assignments (they shouldn't change the source value when exception thrown during type converion).
2016-12-02 15:14:37 +03:00
Dmitry Stogov 2b70d44b57 Fixed behavior of failing compound assignments (they shouldn't change the source value when exception thrown during type converion). 2016-12-02 15:13:55 +03:00
Dmitry Stogov 5a57b3d6e0 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed behavior of failing compound assignments (they shouldn't change the source value).
2016-12-02 14:00:29 +03:00
Dmitry Stogov dbf39cddd9 Fixed behavior of failing compound assignments (they shouldn't change the source value). 2016-12-02 13:58:44 +03:00
Davey Shafik 2f5090168f Bump versions and NEWS for 7.1.1-dev 2016-12-02 02:24:54 -08:00
Dmitry Stogov 04500f1fe0 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed possible memory leak in &=, |=, ^=.
2016-12-02 12:35:44 +03:00
Dmitry Stogov 67d90a4870 Fixed possible memory leak in &=, |=, ^=. 2016-12-02 12:34:46 +03:00
Bob Weinand ad5038bfee Merge branch 'PHP-7.0' into PHP-7.1 2016-12-01 15:21:49 +01:00
Bob Weinand fcaccbaa22 Fix valgrind issue when throwing due to yield from aborted generator 2016-12-01 15:21:28 +01:00
Anatol Belski 1c2333009f Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fork tests
2016-12-01 14:53:22 +01:00
Anatol Belski 2252d4e59d fork tests 2016-12-01 14:52:18 +01:00
Dmitry Stogov 96655ad01e Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bad merge
2016-12-01 16:22:23 +03:00
Dmitry Stogov 7f22e3c879 Fixed bad merge 2016-12-01 16:21:57 +03:00
Dmitry Stogov d149ba217f Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Workaround for GCC-4.9.2 bug
  oops, changed in wrong place
2016-12-01 15:50:19 +03:00
Dmitry Stogov b7b7dd8cea Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Workaround for GCC-4.9.2 bug
  oops, changed in wrong place
2016-12-01 15:50:05 +03:00
Dmitry Stogov 1cd566e13f Workaround for GCC-4.9.2 bug 2016-12-01 15:46:52 +03:00
Anatol Belski 9c7540d357 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  improve skipif
2016-12-01 13:33:42 +01:00
Anatol Belski 615c9bfe5a fix condition 2016-12-01 13:33:27 +01:00
Anatol Belski 043d8e2fe1 improve skipif 2016-12-01 13:32:10 +01:00
Anatol Belski 8ecbb660d0 improve skipif 2016-12-01 13:25:28 +01:00
Dmitry Stogov 54244ba565 Fixed access to uninitialized value 2016-12-01 13:25:50 +03:00
Dmitry Stogov 54f7abfe7d Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Simpler overflow check
  fix gcov coverage
2016-12-01 10:34:09 +03:00
Dmitry Stogov 003346c450 Simpler overflow check 2016-12-01 10:30:02 +03:00
Anatol Belski 60c875b072 fix dir separator 2016-12-01 01:36:29 +01:00
Davey Shafik db456d91f4 Update NEWS for the build 2016-11-30 15:14:38 -08:00
Nuno Lopes d5a2af6d1c Merge branch 'PHP-7.0' of https://git.php.net/push/php-src into PHP-7.0 2016-11-30 14:41:26 -05:00
Bob Weinand e37412e19c Merge branch 'PHP-7.0' into PHP-7.1 2016-11-30 11:45:18 +01:00
Bob Weinand 344ef050aa Fix run-tests.php to always include TEST_PHPDBG_EXECUTABLE if phpdbg available 2016-11-30 11:44:10 +01:00
Bob Weinand 7aaa1a876e Merge branch 'PHP-7.0' into PHP-7.1 2016-11-30 02:57:16 +01:00
Bob Weinand b73a3afff3 Fixed bug #73615 (phpdbg without option never load .phpdbginit at startup) 2016-11-30 02:56:47 +01:00
Dmitry Stogov cabcf8971f Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73586 (php_user_filter::$stream is not set to the stream the filter is working on).
2016-11-28 12:57:02 +03:00
Dmitry Stogov 9a9ad56af0 Fixed bug #73586 (php_user_filter::$stream is not set to the stream the filter is working on). 2016-11-28 12:54:47 +03:00
Dmitry Stogov 458c732ed4 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed calling generators through magic __call()
2016-11-28 12:30:01 +03:00
Dmitry Stogov 970f21be97 Fixed calling generators through magic __call() 2016-11-28 12:20:19 +03:00
Stanislav Malyshev c8778eb293 oops, changed in wrong place 2016-11-27 16:11:41 -08:00
Stanislav Malyshev 53655c5af1 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  add NEWS
  Fix #68447: grapheme_extract take an extra trailing character
2016-11-27 15:38:33 -08:00
Stanislav Malyshev fe04f5494a Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  add NEWS
2016-11-27 15:38:22 -08:00
Stanislav Malyshev 36d02a36ae add NEWS 2016-11-27 15:38:09 -08:00
Stanislav Malyshev f1a9851c3e Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix #68447: grapheme_extract take an extra trailing character
2016-11-27 15:36:29 -08:00
Stanislav Malyshev 8856b3a63c Merge branch 'pull-request/1974' into PHP-5.6
* pull-request/1974:
  Fix #68447: grapheme_extract take an extra trailing character
2016-11-27 15:34:58 -08:00
Stanislav Malyshev 8cc42537d2 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix #73549: Use after free when stream is passed to imagepng
2016-11-27 14:53:39 -08:00
Stanislav Malyshev 1cb58ead70 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix #73549: Use after free when stream is passed to imagepng
2016-11-27 14:53:27 -08:00
Christoph M. Becker 5049ef2f1c Fix #73549: Use after free when stream is passed to imagepng
If a stream is passed to imagepng() or other image output functions,
opposed to a filename, we must not close this stream.
2016-11-27 14:51:02 -08:00
Jakub Zelenka 02cecc0fb5 Update UPGRADING with info about AEAD changes in openssl_(en|de)crypt 2016-11-27 19:05:49 +00:00
Jakub Zelenka 0ebdf3625e Do not add extra timeval entropy when OpenSSL 1.1 used
It is already added by OpenSSL so it is not needed
2016-11-27 19:00:05 +00:00
Jakub Zelenka 0f4216298f Clean up and fix php_openssl_dh_pub_from_priv 2016-11-27 18:54:28 +00:00
Matteo Beccati 461add8adf Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix occasionaly failing test
2016-11-27 10:20:50 +01:00
Matteo Beccati 54c04befc2 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix occasionaly failing test
2016-11-27 10:20:38 +01:00
Matteo Beccati 2a80758fd5 Fix occasionaly failing test 2016-11-27 10:20:13 +01:00
Matteo Beccati 8101024ad4 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Added missing array key to $JUNIT
2016-11-27 10:08:14 +01:00
Matteo Beccati f9b158df07 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Added missing array key to $JUNIT
2016-11-27 10:08:04 +01:00
Matteo Beccati 28cf42568b Added missing array key to $JUNIT 2016-11-27 10:07:05 +01:00
Stanislav Malyshev 8c61bd2e9a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  acinclude.m4: fix krb5-config detection and usage in PHP_SETUP_KERBEROS.
  Add more mbfl string size checks (bug #73505)
2016-11-26 15:37:06 -08:00
Stanislav Malyshev 343c056772 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  acinclude.m4: fix krb5-config detection and usage in PHP_SETUP_KERBEROS.
  Add more mbfl string size checks (bug #73505)
2016-11-26 15:36:57 -08:00
Michael Orlitzky 114277ed45 acinclude.m4: fix krb5-config detection and usage in PHP_SETUP_KERBEROS.
When building with kerberos support (--with-kerberos), a few libraries
and flags need to be added to various parts of the build system. The
most reliable way to get those flags is through the krb5-config
program that ships with both major implementations of kerberos. The
PHP_SETUP_KERBEROS macro in acinclude.m4 attempts to detect
krb5-config, and use it.

However, there's a bug in that macro. The --with-kerberos parameter
accepts a directory where the kerberos libraries can be found. When a
directory is given, it is stored in the PHP_KERBEROS variable. The
following test,

  if test "$PHP_KERBEROS" = "yes" && test -x "$KRB5_CONFIG"; then

thus fails whenever a directory is passed to --with-kerberos, since it
compares a directory name against the string "yes". This causes
krb5-config to go unused, and some unreliable fallback logic is
attempted instead. One consequence of this is that the Heimdal
kerberos implementation cannot be substituted for the MIT one, at
least when a directory is passed to --with-kerberos.

This commit reverses the logic and checks for "$PHP_KERBEROS" != "no".
To confirm that this fixes the issue, one can inspect the "-l" library
flags that get appended to the command-line. On a machine with Heimdal
and the unmodified acinclude.m4, running

  ./configure --with-openssl --with-kerberos=/usr

will log (for example) to config.log,

  configure:18082: checking for krb5-config
  configure:18101: found /usr/bin/krb5-config
  configure:18114: result: /usr/bin/krb5-config
  configure:18450: checking for RAND_egd
  configure:18450: cc ... conftest.c ... -lgssapi_krb5 -lkrb5 ...

which are the library names for the MIT implementation. After patching
acinclude.m4 to negate the logic, the same command on the same machine
outputs (to config.log):

  configure:18450: cc ... conftest.c -lgssapi -lheimntlm ...

These are the correct library names for the Heimdal implementation.

PHP-Bug: 73214
2016-11-26 15:36:49 -08:00
Stanislav Malyshev bc85678df3 Add more mbfl string size checks (bug #73505) 2016-11-26 14:49:48 -08:00
Stanislav Malyshev dd7eee0609 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Add more mbfl string size checks (bug #73505)
2016-11-26 14:48:50 -08:00
Stanislav Malyshev 58cdd03d92 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Add more mbfl string size checks (bug #73505)
2016-11-26 14:48:40 -08:00
Stanislav Malyshev 5ee02b207d Add more mbfl string size checks (bug #73505) 2016-11-26 14:47:58 -08:00
Christoph M. Becker 09085ac02c Merge branch 'PHP-7.0' into PHP-7.1 2016-11-26 16:09:45 +01:00
Christoph M. Becker 003727d851 Fix #73612: preg_*() may leak memory
We have to make sure that collectible zvals end up in the GC root
buffer, to avoid memory leaks.
2016-11-26 15:34:27 +01:00
Stanislav Malyshev 1229b2be26 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix more size_t/int implicit conversions
  Fix int/size_t confusion in isValidPharFilename (bug #73580)
2016-11-25 18:57:06 -08:00
Stanislav Malyshev f9a80a0a29 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix more size_t/int implicit conversions
2016-11-25 15:32:59 -08:00
Stanislav Malyshev 8be94d46f8 Fix more size_t/int implicit conversions
Now the conversions are explicit and do checks. Not sure it's
the best way but at least we can see them now in the open.
2016-11-25 15:31:50 -08:00
Stanislav Malyshev bcc913fa8b Fix int/size_t confusion in isValidPharFilename (bug #73580) 2016-11-25 15:31:50 -08:00
Stanislav Malyshev ffb65ba833 Merge branch 'PHP-7.1' of git.php.net:php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:php-src:
  Fix #73582: Failing ext/gd/tests/imagettftext_charmap_order.phpt
2016-11-25 15:31:22 -08:00
Stanislav Malyshev 7010547c4e Fix more size_t/int implicit conversions
Now the conversions are explicit and do checks. Not sure it's
the best way but at least we can see them now in the open.
2016-11-25 15:30:20 -08:00
Christoph M. Becker 51ba53ed0f Merge branch 'PHP-7.0' into PHP-7.1 2016-11-25 23:27:13 +01:00
Christoph M. Becker bc979aee6d Merge branch 'PHP-5.6' into PHP-7.0 2016-11-25 23:16:18 +01:00
Christoph M. Becker 7f529e3dee Fix #73582: Failing ext/gd/tests/imagettftext_charmap_order.phpt
This test is not supposed to work with JIS-mapped Japanese font support
enabled.
2016-11-25 23:14:08 +01:00
Stanislav Malyshev 2cc3df3252 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix int/size_t confusion in isValidPharFilename (bug #73580)
2016-11-25 13:43:59 -08:00
Stanislav Malyshev cb6bcaa61f Fix int/size_t confusion in isValidPharFilename (bug #73580) 2016-11-25 13:42:35 -08:00
Anatol Belski c26e96a05d Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  add test for bug #57547
2016-11-24 19:27:50 +01:00
Anatol Belski a36dd1dfd8 add test for bug #57547 2016-11-24 19:25:47 +01:00
Derick Rethans ec366eac5f Updated to version 2016.10 (2016j) 2016-11-24 10:40:15 +00:00
Derick Rethans 54b9cd5443 Empty merge 2016-11-24 10:40:15 +00:00
Derick Rethans c38f2c2a6b Updated to version 2016.10 (2016j) 2016-11-24 10:40:14 +00:00
Derick Rethans 0fcb39dbaa Empty merge 2016-11-24 10:40:13 +00:00
Derick Rethans 6785ea2340 Updated to version 2016.10 (2016j) 2016-11-24 10:40:11 +00:00
Xinchen Hui f6bbeab67f Update NEWS 2016-11-24 12:04:03 +08:00
Xinchen Hui c1c91c95a6 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73585 (Logging of "Internal Zend error - Missing class information" missing class name)
2016-11-24 12:03:44 +08:00
Xinchen Hui e19d263d81 Fixed bug #73585 (Logging of "Internal Zend error - Missing class information" missing class name)
Actually, I doubt how thing bug could be triggered
2016-11-24 12:02:02 +08:00
Ferenc Kovacs 0880f2d2f3 Merge branch 'PHP-7.0' into PHP-7.1 2016-11-24 01:58:46 +01:00
Ferenc Kovacs f8a7676fc8 Merge branch 'PHP-5.6' into PHP-7.0 2016-11-24 01:57:42 +01:00
Ferenc Kovacs e715dafae0 5.6.30 will be next 2016-11-24 01:54:23 +01:00
Remi Collet b9f4100291 CS (no leading space in comment for config option) 2016-11-23 14:56:39 +01:00
Xinchen Hui a0b28434cc Fixed bug #73583 (Segfaults when conditionally declared class and function have the same name)
bug was introduced in rev 88eae43f , and the runtime defined key is not
merged-able
2016-11-23 14:24:46 +08:00
Nikita Popov 1c733a345f Merge branch 'PHP-7.0' into PHP-7.1 2016-11-22 19:25:53 +01:00
Nikita Popov 5b88c61580 Merge branch 'PHP-5.6' into PHP-7.0 2016-11-22 19:25:31 +01:00
Nikita Popov 2d19c92fc2 Make php_url_parse_ex() respect length argument
This should fix all out-of-bounds reads that could previously
occur if the string passed to php_url_parse_ex() is not NUL
terminated.
2016-11-22 19:24:24 +01:00
Nikita Popov f0f68c7274 Cleanup parse_url() query/fragment handling
The query/fragment handling was pretty convoluted, with many parts
being duplicated. Simplify by checking for fragment, then for query,
then for path.
2016-11-22 19:24:23 +01:00
Nikita Popov 9befad6fc2 Cleanup parse_url() gotos
Simplify some unnecessarily complicated code. In particular the
length updates are unnecessary (length is only used at the very
start) and we're goto'ing around a bit too much.
2016-11-22 19:24:21 +01:00
Anatol Belski 1208acfa1b Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update libs_versions.txt
  update libs versions.txt
2016-11-22 12:44:06 +01:00
Anatol Belski 13c45021dc update libs_versions.txt 2016-11-22 12:42:57 +01:00
Anatol Belski 189deb9fa3 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update libs versions.txt
2016-11-22 12:42:20 +01:00
Anatol Belski 3e45385903 update libs versions.txt 2016-11-22 12:36:51 +01:00
Anatol Belski 25b5c7c3ec Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  move dev to next
2016-11-22 11:56:16 +01:00
Anatol Belski df902a7c28 move dev to next 2016-11-22 11:49:09 +01:00
Dmitry Stogov cffa004240 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed use after free
2016-11-22 13:28:49 +03:00
Dmitry Stogov 0cf69234e9 Fixed use after free 2016-11-22 13:28:27 +03:00
Dmitry Stogov 4495ea4740 Micro-optimization 2016-11-22 12:06:39 +03:00
Dmitry Stogov 8d70b04a1c Removed useless (double) checks for EG(exception). (Bob) 2016-11-22 11:50:48 +03:00
Dmitry Stogov db5bbe94be Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed memory leak (Bob)
2016-11-22 11:22:55 +03:00
Dmitry Stogov 63ea4d194b Fixed memory leak (Bob) 2016-11-22 11:22:10 +03:00
Anatol Belski b10de2f5c2 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Revert "fix invalid read, follow up on 97b65cc9"
2016-11-22 02:59:17 +01:00
Anatol Belski 0da08fe595 Revert "fix invalid read, follow up on 97b65cc9"
This reverts commit b52fa5882a.
2016-11-22 02:52:23 +01:00
Anatol Belski 189df8e732 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix invalid read, follow up on 97b65cc9
2016-11-22 02:30:16 +01:00
Anatol Belski b52fa5882a fix invalid read, follow up on 97b65cc9 2016-11-22 02:28:45 +01:00
Anatol Belski f574d78715 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS
  update NEWS
2016-11-22 01:01:18 +01:00
Anatol Belski 1549e0c208 update NEWS 2016-11-22 01:01:00 +01:00
Anatol Belski d30b73a7d4 update NEWS 2016-11-22 00:59:40 +01:00
Anatol Belski 8c0227745b Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2016-11-22 00:59:07 +01:00
Anatol Belski 0796db97d4 update NEWS 2016-11-22 00:57:18 +01:00
Anatol Belski fc7d6e3ba5 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix bug #73498
  Add a test for bug 73498
2016-11-22 00:46:54 +01:00
Anatol Belski 58aa1a70a0 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix bug #73498
  Add a test for bug 73498
2016-11-22 00:46:03 +01:00
Craig Duncan 644e290fcd Fix bug #73498
Postgres uses the DELIMITER keyword since 7.3
And WITH is no longer required/used
2016-11-22 00:42:45 +01:00
Craig Duncan d36d4c70d3 Add a test for bug 73498 2016-11-22 00:42:45 +01:00
Anatol Belski d61db8d602 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  remove TSRMLS_*
2016-11-22 00:32:42 +01:00
Anatol Belski 5e9b4c26a5 remove TSRMLS_* 2016-11-21 23:53:37 +01:00
Anatol Belski 2f5e49bdeb Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update php.ini-* for bug #69090
  update php.ini-* according to changes for bug #69090
2016-11-21 22:59:30 +01:00
Anatol Belski 914ff56cff update php.ini-* for bug #69090 2016-11-21 22:58:23 +01:00
Anatol Belski d83ed9b588 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update php.ini-* according to changes for bug #69090
2016-11-21 22:56:46 +01:00
Anatol Belski 850c1095ab update php.ini-* according to changes for bug #69090 2016-11-21 22:52:03 +01:00
Anatol Belski 285be2f92d update NEWS 2016-11-21 20:01:07 +01:00
Anatol Belski 7b95441b72 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS
  update NEWS
2016-11-21 20:00:39 +01:00
Anatol Belski 35993dbb6f update NEWS 2016-11-21 19:59:30 +01:00
Anatol Belski 0df6a32a35 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2016-11-21 19:58:54 +01:00
Anatol Belski 1d352645fc update NEWS 2016-11-21 19:56:09 +01:00
Anatol Belski 86f9da4452 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  add test for bug #73452
  Backport 15ac4904 to 5.6
2016-11-21 15:31:34 +01:00
Anatol Belski eb53865dfd Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  add test for bug #73452
  Backport 15ac4904 to 5.6
2016-11-21 15:29:44 +01:00
Anatol Belski 4805be1db6 add test for bug #73452 2016-11-21 15:25:46 +01:00
Anatol Belski 0da5cb5fb6 Backport 15ac4904 to 5.6 2016-11-21 15:20:03 +01:00
Dmitry Stogov c2829dc628 Regenerated files 2016-11-21 10:38:08 +03:00
Xinchen Hui 50e60e85fe Update NEWs 2016-11-21 11:46:37 +08:00
Xinchen Hui 270f9a0216 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Update NEWS
  Fix memory leak(null coalescing operator with Spl hash)
2016-11-21 11:46:03 +08:00
Xinchen Hui a39d2f8ea1 Update NEWS 2016-11-21 11:45:49 +08:00
Tyson Andre cdb7aafc23 Fix memory leak(null coalescing operator with Spl hash)
The SEPARATE_ARG_IF_REF macro increased the refcount of the object passed as a
key.
However, when the key did not exist in the ArrayAccess implementation,
the code returned early without trying to decrement the refcount.

Add a test of `??` succeeding+failing on a SplObjectStorage instance.
2016-11-20 15:46:13 -08:00
Jakub Zelenka f284479734 Merge branch 'PHP-7.0' into PHP-7.1 2016-11-20 20:38:34 +00:00
Jakub Zelenka 60574ea1ac Fix bug #73526 (php_json_encode depth issue) 2016-11-20 20:36:03 +00:00
Nikita Popov 47252a1e74 Merge branch 'PHP-7.0' into PHP-7.1 2016-11-20 21:19:20 +01:00
Craig Duncan 685b1292e9 Fix bug #73538
Remove any previous default headers and replace with the specified
ones, as documented, and as is the case when a single header is
passed.
2016-11-20 21:18:28 +01:00
Jakub Zelenka ce4869f038 Fix bug #73478 (openssl_pkey_new() generates wrong pub/priv keys with Diffie Hellman) 2016-11-20 20:06:39 +00:00
Bob Weinand 110a6cc6c0 Merge branch 'PHP-7.0' into PHP-7.1 2016-11-20 19:20:09 +01:00
Bob Weinand bc30206b8a Revert "Revert "Remove a few unused write warning""
This reverts commit ff5a65d26b.

(With zend_ prefix now)
2016-11-20 19:18:50 +01:00
Nikita Popov c58378619b Merge branch 'PHP-7.0' into PHP-7.1 2016-11-20 19:10:03 +01:00
Nikita Popov ff5a65d26b Revert "Remove a few unused write warning (backport from master, oops)s"
This reverts commit c65d24eaa3.
2016-11-20 19:09:05 +01:00
Bob Weinand b7fee22e73 Merge branch 'PHP-7.0' into PHP-7.1 2016-11-20 14:18:54 +01:00
Bob Weinand c65d24eaa3 Remove a few unused write warning (backport from master, oops)s 2016-11-20 14:17:14 +01:00
Joe Watkins 40da843ab5 Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1 2016-11-20 08:34:16 +00:00
Joe Watkins f67784907e fix #72180, #73219 2016-11-20 08:32:26 +00:00
Xinchen Hui fcac0f23e0 Update NEWS 2016-11-20 15:47:39 +08:00
Xinchen Hui 0f5d03025f Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73483 (Segmentation fault on pcre_replace_callback)
  Fix #73219 (fix acinclude when / is present)
  make it possible to show specific help pages without interactive session

Conflicts:
	acinclude.m4
2016-11-20 15:46:53 +08:00
Xinchen Hui ebfd93f725 Fixed bug #73483 (Segmentation fault on pcre_replace_callback) 2016-11-20 15:44:27 +08:00
Joe Watkins 274951a4a2 Fix #73219 (fix acinclude when / is present) 2016-11-20 05:34:08 +00:00
Joe Watkins 56f9a93939 make it possible to show specific help pages without interactive session 2016-11-20 05:25:42 +00:00
Joe Watkins 7753d10457 make it possible to show specific help pages without interactive session 2016-11-20 05:24:14 +00:00
Anatol Belski c7d0571ef4 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix test portability
2016-11-18 22:11:25 +01:00
Anatol Belski 48191010d5 fix test portability 2016-11-18 22:10:41 +01:00
Nikita Popov 8bb3957270 Fixed bug #73303 2016-11-18 21:41:43 +01:00
Anatol Belski 828f866e47 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  don't fail miserably, when an unknown vc version is used
2016-11-18 18:21:28 +01:00
Anatol Belski 5b9d7160c5 don't fail miserably, when an unknown vc version is used 2016-11-18 18:19:47 +01:00
Nikita Popov 6c53fe3413 Merge branch 'PHP-7.0' into PHP-7.1 2016-11-18 17:56:28 +01:00
Nikita Popov c0b0e1b0c7 Merge branch 'PHP-5.6' into PHP-7.0 2016-11-18 17:56:16 +01:00
Mitch Hagstrand 55980684f6 Fix the lchwon error test for Travis CI.
The E_WARNING message from the PHP function lchown is passed
from the system function lchown. The error message returned
from lchown can be filesystem dependent.
2016-11-18 17:55:44 +01:00
Christoph M. Becker 1c2f7fcce1 Merge branch 'PHP-7.0' into PHP-7.1 2016-11-18 14:30:57 +01:00
Christoph M. Becker 583a273849 Merge branch 'PHP-5.6' into PHP-7.0 2016-11-18 14:29:52 +01:00
Dmitry Stogov 2e3a4657ad Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Regenerated scanner
2016-11-18 16:20:09 +03:00
Dmitry Stogov 74b3e809d9 Regenerated scanner 2016-11-18 16:19:46 +03:00
Dmitry Stogov d769a020df Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed memory leaks in parse_ini_file()
2016-11-18 16:18:22 +03:00
Dmitry Stogov 97b65cc9c2 Fixed memory leaks in parse_ini_file() 2016-11-18 16:17:52 +03:00
Christoph M. Becker e44deba1e9 Fix #64526: Add missing mysqlnd.* parameters to php.ini-* 2016-11-18 14:17:19 +01:00
Anatol Belski 9ab0db0813 extend skipif 2016-11-18 12:00:02 +01:00
Dmitry Stogov 6a647150ee Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Disabled PHP call tracing by default (it makes significant overhead). This may be enabled again using envirionment variable USE_ZEND_DTRACE=1.
2016-11-18 13:21:22 +03:00
Dmitry Stogov 0c78fe4bb5 Disabled PHP call tracing by default (it makes significant overhead).
This may be enabled again using envirionment variable USE_ZEND_DTRACE=1.
2016-11-18 13:19:30 +03:00
Dmitry Stogov a911df5d22 Revert "Introduced zend.enable_dtrace INI directive to enable/disable PHP call tracing"
This reverts commit 01239b0eff.
2016-11-18 12:52:46 +03:00
Dmitry Stogov 0e075d2f04 Merge branch 'PHP-7.1' of git.php.net:php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:php-src:
  extend skipif
  add vc15 to the list
2016-11-18 12:23:48 +03:00
Dmitry Stogov 01239b0eff Introduced zend.enable_dtrace INI directive to enable/disable PHP call tracing 2016-11-18 12:23:10 +03:00
Anatol Belski b2b63ce993 extend skipif
This test won't pass on Windows. The main reason is that the multiline
input is not really possible to create on cmd. But also, because of the
single quotes. And without multiline data piping, it doesn't make sense.
2016-11-18 02:23:17 +01:00
Anatol Belski 8806c54b00 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  add vc15 to the list
2016-11-17 23:46:49 +01:00
Anatol Belski 5008acd1f6 add vc15 to the list 2016-11-17 23:43:32 +01:00
Dmitry Stogov 79d9c12bf9 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed test
  Updated NEWS
  Improvement for bug73297
  Simplify ext/standard/tests/http/bug73297.phpt
  http_fopen_wrapper.c - bug#73297 Skip past "100 Continue" responses
  Add failing test for bug#73297
  Updated NEWS
  Improvement for bug73297
  Simplify ext/standard/tests/http/bug73297.phpt
  http_fopen_wrapper.c - bug#73297 Skip past "100 Continue" responses
  Add failing test for bug#73297
2016-11-17 15:59:35 +03:00
Dmitry Stogov 3817a2e6d5 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed test
  Updated NEWS
  Improvement for bug73297
  Simplify ext/standard/tests/http/bug73297.phpt
  http_fopen_wrapper.c - bug#73297 Skip past "100 Continue" responses
  Add failing test for bug#73297
2016-11-17 15:58:38 +03:00
Dmitry Stogov c2d6ffb85f Fixed test 2016-11-17 15:57:40 +03:00
Nikita Popov 226b82b127 RC inference fixes 2016-11-17 13:47:36 +01:00
Dmitry Stogov 05d382e7ec Merge branch 'PHP-7.0' of git.php.net:php-src into PHP-7.0
* 'PHP-7.0' of git.php.net:php-src:
  Updated NEWS
  Improvement for bug73297
  Simplify ext/standard/tests/http/bug73297.phpt
  http_fopen_wrapper.c - bug#73297 Skip past "100 Continue" responses
  Add failing test for bug#73297
2016-11-17 14:07:11 +03:00
Dmitry Stogov 087665e65d Merge branch 'PHP-7.1' of git.php.net:php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:php-src:
  Updated NEWS
  Improvement for bug73297
  Simplify ext/standard/tests/http/bug73297.phpt
  http_fopen_wrapper.c - bug#73297 Skip past "100 Continue" responses
  Add failing test for bug#73297
2016-11-17 14:06:56 +03:00
Dmitry Stogov 205c69939a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed 64-bit build
2016-11-17 14:05:48 +03:00
Dmitry Stogov c2173c16d0 Fixed 64-bit build 2016-11-17 14:05:22 +03:00
Julien Pauli 0e03003db2 Updated NEWS 2016-11-17 11:51:53 +01:00
Julien Pauli 4b2cbc3f2f Improvement for bug73297 2016-11-17 11:51:53 +01:00
Rowan Collins 66ac73bee8 Simplify ext/standard/tests/http/bug73297.phpt 2016-11-17 11:51:53 +01:00
Rowan Collins 94374c51e7 http_fopen_wrapper.c - bug#73297 Skip past "100 Continue" responses 2016-11-17 11:51:53 +01:00
Rowan Collins 4683377dfa Add failing test for bug#73297 2016-11-17 11:51:53 +01:00
Julien Pauli 344bc66b07 Updated NEWS 2016-11-17 11:51:31 +01:00
Julien Pauli 0f9225f893 Improvement for bug73297 2016-11-17 11:51:30 +01:00
Rowan Collins 773bc082ca Simplify ext/standard/tests/http/bug73297.phpt 2016-11-17 11:51:29 +01:00
Rowan Collins 417162a9ba http_fopen_wrapper.c - bug#73297 Skip past "100 Continue" responses 2016-11-17 11:51:29 +01:00
Rowan Collins 12c4ff9b87 Add failing test for bug#73297 2016-11-17 11:51:29 +01:00
Dmitry Stogov c8dc23e9ba Fixed test 2016-11-17 13:43:45 +03:00
Julien Pauli c4f1c20d80 Updated NEWS 2016-11-17 11:37:13 +01:00
Dmitry Stogov a56bba14e0 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Prevent modification of immutable arrays (ext/mbstring/tests/bug26639.phpt failure with opcache.protect_memory=1)
2016-11-17 13:34:32 +03:00
Julien Pauli 49030f2a25 Improvement for bug73297 2016-11-17 11:33:36 +01:00
Dmitry Stogov a67637039f Prevent modification of immutable arrays (ext/mbstring/tests/bug26639.phpt failure with opcache.protect_memory=1) 2016-11-17 13:33:05 +03:00
Dmitry Stogov 365d613480 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Overflow check
2016-11-17 13:18:25 +03:00
Dmitry Stogov d4b3f89c53 Overflow check 2016-11-17 13:17:34 +03:00
Rowan Collins eba5e276c7 Simplify ext/standard/tests/http/bug73297.phpt 2016-11-17 11:04:57 +01:00
Rowan Collins aec1a5eccc http_fopen_wrapper.c - bug#73297 Skip past "100 Continue" responses 2016-11-17 11:04:56 +01:00
Rowan Collins 6122526cea Add failing test for bug#73297 2016-11-17 11:04:56 +01:00
Dmitry Stogov ca27efd7b8 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Skip 64-bit specific tests on 32-bit systems
2016-11-17 11:45:14 +03:00
Dmitry Stogov 5e001c34ec Skip 64-bit specific tests on 32-bit systems 2016-11-17 11:44:28 +03:00
Dmitry Stogov f8f35d0d4e VERIFY_RETURN_TYPE on references can't be eliminated 2016-11-17 10:41:42 +03:00
Dmitry Stogov 429bfbd4c2 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Accorate handling of too big inodes of chroot directories
2016-11-17 01:14:47 +03:00
Dmitry Stogov 27542d9c9d Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Accorate handling of too big inodes of chroot directories
2016-11-17 01:14:23 +03:00
Dmitry Stogov 9849c97b1b Accorate handling of too big inodes of chroot directories 2016-11-17 01:08:42 +03:00
Nikita Popov 592c10d37c Merge branch 'PHP-7.0' into PHP-7.1 2016-11-16 21:33:05 +01:00
Mitch Hagstrand 1d8be7c044 Fix #73546: Logging for opcache has an empty file name 2016-11-16 21:30:40 +01:00
Dmitry Stogov 09ac2bf752 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  "opcache.validate_root" is useless on Windows
2016-11-16 23:20:22 +03:00
Dmitry Stogov 71ee641327 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  "opcache.validate_root" is useless on Windows
2016-11-16 23:19:56 +03:00
Dmitry Stogov 935d922114 "opcache.validate_root" is useless on Windows 2016-11-16 23:15:14 +03:00
Nuno Lopes d26b8804d0 fix gcov coverage 2016-11-16 15:11:07 -05:00
Dmitry Stogov b3b2748ce9 Merge branch 'PHP-7.1' of git.php.net:php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:php-src:
  fix gcov coverage
2016-11-16 23:10:59 +03:00
Dmitry Stogov cd3527baee Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Use full path
2016-11-16 23:09:13 +03:00
Nuno Lopes 7032ed37c0 fix gcov coverage 2016-11-16 15:08:42 -05:00
Dmitry Stogov 8e350a627a Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Use full path
2016-11-16 23:05:00 +03:00
Dmitry Stogov 8202b97077 Use full path 2016-11-16 23:01:40 +03:00
Dmitry Stogov a04d9e0f1b Fixed type ingference 2016-11-16 20:49:00 +03:00
Dmitry Stogov 1f3a5b4501 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed ZTS build
2016-11-16 16:47:22 +03:00
Dmitry Stogov 99e5d6c4a5 Merge branch 'PHP-7.0' of git.php.net:php-src into PHP-7.0
* 'PHP-7.0' of git.php.net:php-src:
2016-11-16 16:47:05 +03:00
Dmitry Stogov eb976b89c4 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed ZTS build
  Fix #73530: Unsetting result set may reset other result set
2016-11-16 16:46:54 +03:00
Dmitry Stogov a91f3d475e Fixed ZTS build 2016-11-16 16:43:57 +03:00
Christoph M. Becker c5abb87322 Merge branch 'PHP-7.0' into PHP-7.1 2016-11-16 12:02:29 +01:00
Christoph M. Becker 936cafe33e Merge branch 'PHP-5.6' into PHP-7.0 2016-11-16 12:00:39 +01:00
Christoph M. Becker eb570294a2 Fix #73530: Unsetting result set may reset other result set
Calling sqlite3_reset() when a result set object is freed can cause
undesired and maybe even hard to track interference with other result
sets. Furthermore, there is no need to call sqlite3_reset(), because
that is implicitly called on SQLite3Stmt::execute(), and users are
encouraged to explicitly call either SQLite3Result::finalize() or
SQLite3Stmt::reset() anyway.
2016-11-16 11:49:04 +01:00
Anatol Belski 5eeec01bae keep ABI 2016-11-16 11:21:32 +01:00
Dmitry Stogov bffbff7dd0 Merge branch 'PHP-7.1' of git.php.net:php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:php-src:
  Fixed bug #73512 Fails to find firebird headers
2016-11-16 12:59:28 +03:00
Dmitry Stogov 86460af56c Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #69090 (check cached files permissions)
2016-11-16 12:56:15 +03:00
Dmitry Stogov a1a5b52f3b Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed bug #69090 (check cached files permissions)
2016-11-16 12:49:50 +03:00
Remi Collet 397bedcc7c Fixed bug #73512 Fails to find firebird headers
- use fb_config output instead of relying on hardoded path
2016-11-16 10:47:02 +01:00
Dmitry Stogov ecba563f2f Fixed bug #69090 (check cached files permissions) 2016-11-16 12:43:10 +03:00
Xinchen Hui 5ae5ab83fd Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:/php-src:
  new entry for #2196
  Improve error message
  Fix test
  Refactor and cleanup implementation.
  Revert "Fix Bug #73461"
  Revert "Protect class based session save handler"
  Protect class based session save handler
  Fix Bug #73461
2016-11-16 15:14:33 +08:00
Xinchen Hui 229024c725 Fixed bug #73532 (Null pointer dereference in mb_eregi) 2016-11-16 15:05:04 +08:00
Joe Watkins 0966c98eef new entry for #2196 2016-11-16 05:12:04 +00:00
Yasuo Ohgaki d990c54c83 Improve error message 2016-11-16 05:08:29 +00:00
Yasuo Ohgaki 3b45716e40 Fix test 2016-11-16 05:08:29 +00:00
Yasuo Ohgaki 3d6e922367 Refactor and cleanup implementation. 2016-11-16 05:08:29 +00:00
Yasuo Ohgaki 7b29c3fba6 Revert "Fix Bug #73461"
This reverts commit 0383de14678e4c77e11ebf261530d4c1260825a1.
2016-11-16 05:08:29 +00:00
Yasuo Ohgaki 186ff85588 Revert "Protect class based session save handler"
This reverts commit d1be861aee1287e8ecb04b72d93b9749ab67706e.
2016-11-16 05:08:29 +00:00
Yasuo Ohgaki 46c64ac9f2 Protect class based session save handler 2016-11-16 05:08:28 +00:00
Yasuo Ohgaki 6230c2bad0 Fix Bug #73461
This patch disables any invalid save handler calls.
2016-11-16 05:08:28 +00:00
Christoph M. Becker d6c36e9af7 Update to SQLite 3.15.1 2016-11-14 14:55:13 +01:00
Bob Weinand 6834b7344d Merge branch 'PHP-7.0' into PHP-7.1 2016-11-13 18:30:49 +01:00
Bob Weinand 22a43551a2 Fix passing of wrong values in bp export 2016-11-13 18:30:23 +01:00
Bob Weinand ef657978b2 Merge branch 'PHP-7.0' into PHP-7.1 2016-11-13 13:22:35 +01:00
Bob Weinand ba75d4c50b Properly escape all filenames when exporting breakpoints 2016-11-13 13:22:06 +01:00
Mitch Hagstrand 57c0773cd7 Fix phpdbg breakpoint restoring after execution completes 2016-11-13 12:44:25 +01:00
Bob Weinand dbd504eaa9 Fix phpdbg ZTS shutdown with USE_ZEND_ALLOC 2016-11-13 12:25:43 +01:00
Joe Watkins 057ae377a0 news entry for #1787 in 7.1 2016-11-13 05:42:35 +00:00
Joe Watkins 77efe76bf7 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  news entry for #1787
  move declaration of vars to top
  add test for #69587
  fix bug #69587 DateInterval properties and isset
2016-11-13 05:34:11 +00:00
Joe Watkins 84e2904def news entry for #1787 2016-11-13 05:33:59 +00:00
jhdxr 0bd63959c9 move declaration of vars to top 2016-11-13 05:32:24 +00:00
jhdxr 9ad2083773 add test for #69587 2016-11-13 05:32:24 +00:00
jhdxr 23f9e48273 fix bug #69587 DateInterval properties and isset 2016-11-13 05:32:24 +00:00
Joe Watkins 011afaf9c4 Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1 2016-11-12 17:57:20 +00:00
Nikita Popov 5f4f83220a Don't inline if function has ref arguments
Otherwise we end up leaving opcodes like FETCH_DIM_W behind. The
test case demonstrates a leak in particular.
2016-11-12 18:49:41 +01:00
Joe Watkins 147f1f2e3b fix news 2016-11-12 17:46:40 +00:00
Joe Watkins beed682572 news entry for #2166 2016-11-12 17:45:16 +00:00
Edgar R. Sandi 72be8de39f fixed bug generated by fixes bug #73135 2016-11-12 17:43:16 +00:00
Edgar R. Sandi 1631c61feb phpt file to bug #73135 2016-11-12 17:43:16 +00:00
Edgar R. Sandi 319822b050 fixes bug #73135 2016-11-12 17:43:16 +00:00
Joe Watkins 2d865dfd35 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  news entry for calendar overflow fix
  Fix integer overflow in calender.
2016-11-12 17:35:24 +00:00
Joe Watkins d2b03119e2 news entry for calendar overflow fix 2016-11-12 17:35:04 +00:00
Joshua Rogers 1b8cfaf23d Fix integer overflow in calender.
Fix int overflows in conversation functions for calendar.
Add tests for the overflows.
2016-11-12 17:33:51 +00:00
Joe Watkins d1910f66e5 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  added a test for date_interval_format function
  Merge branch 'pull-request/2198'
2016-11-12 09:59:24 +00:00
Jean Carlo Machado f578ce3a13 added a test for date_interval_format function 2016-11-12 09:57:50 +00:00
Joe Watkins ff1986e4d7 Merge branch 'pull-request/2198' 2016-11-12 08:16:01 +00:00
Joe Watkins 41e04dbec0 Merge branch 'pull-request/2198' 2016-11-12 08:15:52 +00:00
Anatol Belski 8486e045db Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix erroneous line in confutils.js
2016-11-12 02:38:33 +01:00
Stricted 81fed37784 fix erroneous line in confutils.js 2016-11-12 02:35:41 +01:00
Nikita Popov 3c8beb16c4 Allow early-binding of ZEND_NEW args 2016-11-10 22:52:15 +01:00
Nikita Popov 8106c01afc Fix block pass leaks 2016-11-10 22:28:32 +01:00
Nikita Popov 62af7e0db8 Merge branch 'PHP-7.0' into PHP-7.1 2016-11-10 22:19:48 +01:00
Nikita Popov bb3d0c0e17 Fcall optimization: Avoid FETCH_DIM_R with UNUSED op2 2016-11-10 21:36:46 +01:00
Joe Watkins 56e1807ef9 belated news entries 2016-11-10 17:11:24 +00:00
Nikita Popov 3048428cf0 Don't elide undef var notice 2016-11-10 14:58:54 +01:00
Nikita Popov 4f76073b6d Set result of FREE to unused in block pass 2016-11-10 14:55:52 +01:00
Nikita Popov 570e7fa331 Fix ext/xml func info 2016-11-10 14:55:50 +01:00
Nikita Popov 0378121c64 Range inference cleanup
Replace inline #ifdefs with some macros. Fix build if NEG_RANGE is
disabled. Fix some typos. Add some comments.
2016-11-10 14:55:40 +01:00
Dmitry Stogov 0950550fb9 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Don't update proprties inplace.
2016-11-10 12:34:09 +03:00
Dmitry Stogov 15ac490472 Don't update proprties inplace. 2016-11-10 12:32:07 +03:00
Anatol Belski 4a242b9feb Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  add missing NEWS entry
  add missing NEWS entry
2016-11-09 21:37:41 +01:00
Anatol Belski 6c087f8551 add missing entry 2016-11-09 21:37:04 +01:00
Anatol Belski f6be108574 add missing NEWS entry 2016-11-09 21:34:41 +01:00
Anatol Belski cc1337bced Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  add missing NEWS entry
2016-11-09 21:34:16 +01:00
Anatol Belski e922d89f66 add missing NEWS entry 2016-11-09 21:32:44 +01:00
Anatol Belski ddbac6d70d improve lib name guessing for newer libtidy
FreeBSD calls it tidy5. Still, the check is not perfect, as both
old and new lib can coexist. ATM, the preference is to pick up the
old lib, still. In it's absense the new one will be looked up.
2016-11-09 11:28:50 +01:00
Anatol Belski 5445685591 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  sync NEWS
2016-11-09 11:20:20 +01:00
Anatol Belski 1beb5a74b1 sync NEWS 2016-11-09 11:19:13 +01:00
Pedro Magalhães 9b41591883 Remove binary casts from PHAR's default stub 2016-11-09 03:23:15 +00:00
Ferenc Kovacs 6cd7423706 Merge branch 'PHP-7.0' into PHP-7.1 2016-11-09 02:18:18 +01:00
Ferenc Kovacs 723c7c6466 Merge branch 'PHP-5.6' into PHP-7.0 2016-11-09 02:16:32 +01:00
Ferenc Kovacs 87673d6e99 add missing NEWS entries 2016-11-09 02:12:16 +01:00
Anatol Belski 59f2f14aea Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix memory leak
2016-11-08 12:17:39 +01:00
Anatol Belski e87daf363b Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix memory leak
2016-11-08 12:16:39 +01:00
Anatol Belski d6d08f97cd fix memory leak 2016-11-08 12:12:58 +01:00
Anatol Belski 9b81342352 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73418 Integer Overflow in "_php_imap_mail" leads to crash
  Fixed bug #73418 Integer Overflow in "_php_imap_mail" leads to crash
  Fix #72696: imagefilltoborder stackoverflow on truecolor images
  Fix #72482: Ilegal write/read access caused by gdImageAALine overflow
  Fix bug #73144 and bug #73341 - remove extra dtor
  remove unreferenced var came in with merge
  Fix bug #73331 - do not try to serialize/unserialize objects wddx can not handle
  Fix #72696: imagefilltoborder stackoverflow on truecolor images
  Fix #72482: Ilegal write/read access caused by gdImageAALine overflow
  fix version
  set versions
  Fix bug #73144 and bug #73341 - remove extra dtor
  Fix bug #73331 - do not try to serialize/unserialize objects wddx can not handle
2016-11-08 11:15:06 +01:00
Anatol Belski 2b30b54275 Merge remote-tracking branch 'phpsec/PHP-7.0.13' into PHP-7.0
* phpsec/PHP-7.0.13:
  Fixed bug #73418 Integer Overflow in "_php_imap_mail" leads to crash
  Fix #72696: imagefilltoborder stackoverflow on truecolor images
  Fix #72482: Ilegal write/read access caused by gdImageAALine overflow
  Fix bug #73144 and bug #73341 - remove extra dtor
  remove unreferenced var came in with merge
  Fix bug #73331 - do not try to serialize/unserialize objects wddx can not handle
  fix version
  set versions
2016-11-08 11:13:29 +01:00
Anatol Belski 5faaf76bd5 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed bug #73418 Integer Overflow in "_php_imap_mail" leads to crash
  Fix #72696: imagefilltoborder stackoverflow on truecolor images
  Fix #72482: Ilegal write/read access caused by gdImageAALine overflow
  Fix bug #73144 and bug #73341 - remove extra dtor
  Fix bug #73331 - do not try to serialize/unserialize objects wddx can not handle
2016-11-08 11:11:22 +01:00
Anatol Belski 33766347cb Merge remote-tracking branch 'phpsec/PHP-5.6.28' into PHP-5.6 2016-11-08 11:06:52 +01:00
Anatol Belski ed12167edf Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Enable FTS4 and FTS5 for bundled libsqlite
2016-11-08 02:35:33 +01:00
Anatol Belski ef55a4b5b3 Enable FTS4 and FTS5 for bundled libsqlite
FTS3 is already enabled by default, and the other FTS versions
seems just to have been missed. Given that, the other FTS plugins
look like a low impact so worth a try. The current bundled libsqlite
versions in 7.x are proven stable already and support FTS5.
2016-11-08 02:26:43 +01:00
Anatol Belski 271a593198 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  avoid unneeded copying
2016-11-07 21:19:04 +01:00
Anatol Belski 0c2156d190 avoid unneeded copying 2016-11-07 21:09:03 +01:00
Anatol Belski a6aa3edd73 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS
2016-11-07 20:48:41 +01:00
Anatol Belski 054eafdc63 update NEWS 2016-11-07 20:48:13 +01:00
Anatol Belski a67b894cc8 update NEWS 2016-11-07 20:47:06 +01:00
Anatol Belski 1257287dbd Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Add test for bug #73448
2016-11-07 20:40:46 +01:00
Anatol Belski f0676cbe20 Add test for bug #73448 2016-11-07 20:39:51 +01:00
Anatol Belski 42925630a4 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73448 odbc_errormsg returns trash, always 513 bytes
2016-11-07 20:21:56 +01:00
Anatol Belski 3558e70e58 Fixed bug #73448 odbc_errormsg returns trash, always 513 bytes 2016-11-07 20:18:29 +01:00
Derick Rethans 69a3659d41 Add hint that naive DateTime comparisions now are more likely to fail 2016-11-07 16:40:42 +00:00
Jakub Zelenka e161b0f755 Merge branch 'PHP-7.0' into PHP-7.1 2016-11-06 20:44:40 +00:00
Jakub Zelenka 20587805f9 Merge branch 'PHP-5.6' into PHP-7.0 2016-11-06 20:43:50 +00:00
Jakub Zelenka 493b2bff02 Fix bug #72776 (Invalid parameter in memcpy function trough openssl_pbkdf2) 2016-11-06 20:40:51 +00:00
Jakub Zelenka e840071b76 Never return private part of the key from openssl_csr_get_public_key
This fixes ecc.phpt test when OpenSSL 1.1 linked.
2016-11-06 17:37:06 +00:00
Anatol Belski 43df063f9f Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  add missing RETURN_STRINGL_CHECK
2016-11-06 17:57:19 +01:00
Anatol Belski 8d1376ee4f Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  add missing RETURN_STRINGL_CHECK
2016-11-06 17:56:14 +01:00
Anatol Belski b044a7429e add missing RETURN_STRINGL_CHECK
As RETVAL_STRINGL_CHECK is already there, this one is needed for
completion. One place in ext/bz2 is missing that, so it will likely
be useful for other possible fixes.
2016-11-06 17:51:25 +01:00
Anatol Belski 71495d28a3 update NEWS 2016-11-06 17:12:46 +01:00
Anatol Belski 8519c05858 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS
2016-11-06 17:12:18 +01:00
Anatol Belski b9200b4623 update NEWS 2016-11-06 17:11:19 +01:00
Nikita Popov c0762bd8c8 Merge branch 'PHP-7.0' into PHP-7.1 2016-11-05 23:10:19 +01:00
Nikita Popov b2af4e8868 Complete the fix of bug #70172 for PHP 7 2016-11-05 23:06:27 +01:00
Anatol Belski faae3122d2 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix blob parameters binding. Fixes: #73087, #61183, #71494
2016-11-05 22:54:44 +01:00
Dorin Marcoci 3d73f718b2 Fix blob parameters binding. Fixes: #73087, #61183, #71494
Adjusted formatting according to requirements

Test case for bug #73087
2016-11-05 22:49:16 +01:00
Stanislav Malyshev 47d0993d2a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  More int->size_t and string overflow fixes
2016-11-05 14:00:53 -07:00
Stanislav Malyshev 3b78cabc88 More int->size_t and string overflow fixes 2016-11-05 14:00:47 -07:00
Stanislav Malyshev f7f8aae33c Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  More int->size_t and string overflow fixes
2016-11-05 13:59:35 -07:00
Stanislav Malyshev 669763d88a More int->size_t and string overflow fixes 2016-11-05 13:22:17 -07:00
Anatol Belski 86ae78d7c6 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  rename the tmp ini file, to keep it consistent with m4 variant
2016-11-04 18:43:56 +01:00
Anatol Belski cf4f168d4c rename the tmp ini file, to keep it consistent with m4 variant 2016-11-04 18:42:36 +01:00
Anatol Belski d73af63ec9 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix dir separator in test
2016-11-04 18:39:09 +01:00
Anatol Belski 3ec398f650 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix dir separator in test
2016-11-04 18:38:22 +01:00
Anatol Belski 617f38b0e0 fix dir separator in test 2016-11-04 18:29:54 +01:00
Anatol Belski 177bb79359 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix dir separator
2016-11-04 13:11:29 +01:00
Anatol Belski a61eade827 fix dir separator 2016-11-04 13:10:52 +01:00
Stanislav Malyshev 25d04ad8e3 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Add length check for bzcompress too - fix for bug #73356
  More string length checks & fixes
  More string length checks & fixes
2016-11-03 22:53:05 -07:00
Stanislav Malyshev d858b4c77f Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Add length check for bzcompress too - fix for bug #73356
2016-11-03 22:30:46 -07:00
Stanislav Malyshev 40f7fea897 Add length check for bzcompress too - fix for bug #73356 2016-11-03 22:10:22 -07:00
Stanislav Malyshev 2fa455128c Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  More string length checks & fixes
2016-11-03 22:05:25 -07:00
Stanislav Malyshev 1fd18821e0 More string length checks & fixes 2016-11-03 21:35:09 -07:00
Stanislav Malyshev 6e12e49b5b Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  More string length checks & fixes
2016-11-03 20:46:25 -07:00
Stanislav Malyshev ea9fac94bb More string length checks & fixes 2016-11-03 20:36:52 -07:00
Derick Rethans 0bc6592307 Updated to version 2016.9 (2016i) 2016-11-03 13:57:32 -04:00
Derick Rethans 9a1b912f0f Empty merge 2016-11-03 13:57:32 -04:00
Derick Rethans 7f2b7a4950 Updated to version 2016.9 (2016i) 2016-11-03 13:57:31 -04:00
Derick Rethans 209202e4b5 Empty merge 2016-11-03 13:57:30 -04:00
Derick Rethans ccb91cde94 Updated to version 2016.9 (2016i) 2016-11-03 13:57:28 -04:00
Anatol Belski de643586de Fixed bug #73418 Integer Overflow in "_php_imap_mail" leads to crash
(cherry picked from commit 99b242a6d0)
2016-11-03 17:09:03 +01:00
Anatol Belski 99b242a6d0 Fixed bug #73418 Integer Overflow in "_php_imap_mail" leads to crash 2016-11-03 17:03:23 +01:00
Xinchen Hui 6838737f85 Update NEWS 2016-11-02 12:12:12 +08:00
Xinchen Hui 46ab107936 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73423 (Reproducible crash with GDB backtrace)
2016-11-02 12:11:48 +08:00
Xinchen Hui 1efb9fd32d Fixed bug #73423 (Reproducible crash with GDB backtrace) 2016-11-02 12:11:30 +08:00
Dmitry Stogov bdc1ba3e3a Intriduced ZEND_ACC_INHERITED class flag.
It's going to be helpful for static optimisations, when "parent" is not known yet.
2016-11-01 22:56:25 +03:00
Christoph M. Becker b281362681 Merge branch 'PHP-7.0' into PHP-7.1 2016-11-01 20:29:11 +01:00
Christoph M. Becker 8957ff36b3 Merge branch 'PHP-5.6' into PHP-7.0 2016-11-01 20:24:10 +01:00
Christoph M. Becker 2eacb53fc4 Fix #73436: Setting allow_url_fopen to Off makes several tests fail
We make sure that these tests run with allow_url_fopen=1.
2016-11-01 20:13:53 +01:00
Sara Golemon 65d7bbaddc Change Big Endian backup implementations to use signed indexes
load64() counted down from 7..0, but the decrement turned 0 into 255.
This means the loop would never terminate on Big Endian systems.

Just use signed char integers since we're only dealing with values from 0..7 anyway.

Closes https://bugs.php.net/bug.php?id=73282
2016-11-01 09:35:54 -07:00
Dmitry Stogov a5458e7e8e Fixed reference-counter inference 2016-11-01 19:04:10 +03:00
Anatol Belski d7608d0d69 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  add run target
2016-11-01 14:02:04 +01:00
Anatol Belski 197def7233 add run target
With this it is possible to run some code with the currently compiled
PHP and all the required environment included.
2016-11-01 13:50:46 +01:00
Christoph M. Becker 5693474997 Fix #72696: imagefilltoborder stackoverflow on truecolor images
We must not allow negative color values be passed to
gdImageFillToBorder(), because that can lead to infinite recursion
since the recursion termination condition will not necessarily be met.

(cherry picked from commit 863d37ea66)
2016-11-01 13:07:37 +01:00
Christoph M. Becker 1b5543b8ab Fix #72482: Ilegal write/read access caused by gdImageAALine overflow
Instead of rolling our own bounds check we use clip_1d() as it's done
in gdImageLine() and in external libgd. We must not pass the image
width and height, respectively, but rather the largest ordinate value
that is allowed to be accessed, i.e. width-1 and height-1,
respectively.

(cherry picked from commit 6499581af7)
2016-11-01 13:03:41 +01:00
Stanislav Malyshev 7cf7920055 Fix bug #73144 and bug #73341 - remove extra dtor
(cherry picked from commit f74d7d92c8)

Conflicts:
	ext/spl/spl_array.c

Merged the test only, in 7.0 tree the removed dtor call is already
not present.
2016-11-01 13:01:58 +01:00
Anatol Belski 6b21c28b0e remove unreferenced var came in with merge 2016-11-01 12:55:05 +01:00
Stanislav Malyshev 8c67460a10 Fix bug #73331 - do not try to serialize/unserialize objects wddx can not handle
Proper soltion would be to call serialize/unserialize and deal with the result,
but this requires more work that should be done by wddx maintainer (not me).

(cherry picked from commit 6045de69c7)

Conflicts:
	ext/wddx/wddx.c
2016-11-01 12:50:33 +01:00
Dmitry Stogov e88adddfd1 Fixed reference-counter inference 2016-11-01 00:18:12 +03:00
Dmitry Stogov d3325ff771 typo 2016-10-31 21:39:34 +03:00
Dmitry Stogov e696927e48 Fixed reference-counter inference 2016-10-31 19:51:19 +03:00
Derick Rethans 1d1a7feecf - Fixed bug #73426: createFromFormat with 'z' format char results in incorrect time. 2016-10-31 10:43:33 +00:00
Stanislav Malyshev 97fc6aa8df Merge branch 'pull-request/2179' into PHP-7.1
* pull-request/2179:
  Typo
2016-10-30 17:11:18 -07:00
Christoph M. Becker 863d37ea66 Fix #72696: imagefilltoborder stackoverflow on truecolor images
We must not allow negative color values be passed to
gdImageFillToBorder(), because that can lead to infinite recursion
since the recursion termination condition will not necessarily be met.
2016-10-30 14:31:29 -07:00
Christoph M. Becker 6499581af7 Fix #72482: Ilegal write/read access caused by gdImageAALine overflow
Instead of rolling our own bounds check we use clip_1d() as it's done
in gdImageLine() and in external libgd. We must not pass the image
width and height, respectively, but rather the largest ordinate value
that is allowed to be accessed, i.e. width-1 and height-1,
respectively.
2016-10-30 14:28:23 -07:00
Anatol Belski 5c793bf2ac Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  prefer symbols read from the bin to those matching the naming scheme
2016-10-30 21:27:35 +01:00
Anatol Belski 4b472b0763 prefer symbols read from the bin to those matching the naming scheme 2016-10-30 21:26:19 +01:00
Anatol Belski 73afc03679 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  remove debug out
2016-10-30 21:13:55 +01:00
Anatol Belski 4dfd7de974 remove debug out 2016-10-30 21:12:50 +01:00
Anatol Belski 12571e4cfe Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix link with deps pdb availability
2016-10-30 21:07:20 +01:00
Anatol Belski c5a4a6f1f2 fix link with deps pdb availability
Unlike debugger, linker is currently not able to read the pdb files,
even if they're put onto path. As result, a lot of LNK4099 warnings
and in some cases also missing debug information in the end binaries.
This is solved by copying the relevant pdb into the build dir, which
then can be picked up on link time. This also leads to the inclusion
of those pdb files into the debug package, so symbols won't be missed
in crash dumps. As otherwise the debug info for dependencies is only
contained in the dependency packages.
2016-10-30 20:55:38 +01:00
Jakub Zelenka 1a13809bae Define X509_get_signature_nid for LibreSSL
It should hopefully fix the LibreSSL build. Thanks to Alice Wonder!
2016-10-30 19:12:24 +00:00
Jakub Zelenka 72659f9597 Fix EC_KEY memory leaks
It was caused by using of EVP_PKEY_get1_EC_KEY which increments an EC_KEY
reference. The fix it we simply use EVP_PKEY_get0_EC_KEY.
2016-10-30 18:58:11 +00:00
Anatol Belski d23aa74f07 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  use rather the makefile var
  rename the env setting target and reuse it for build-snap
2016-10-30 15:30:17 +01:00
Anatol Belski cdea5eb941 use rather the makefile var 2016-10-30 15:29:13 +01:00
Anatol Belski 78a164bad5 rename the env setting target and reuse it for build-snap 2016-10-30 15:22:45 +01:00
Jakub Zelenka c34de0b61c Introduce json encoder to fix globals related issues
It fixes bugs #66025 and #73254 by replacing globals with
a passed structure holding depth and error code. In addition
it fixes #72069 in a more generic way.
2016-10-30 13:20:10 +00:00
Bob Weinand be6bf71274 Merge branch 'PHP-7.0' into PHP-7.1 2016-10-29 18:50:06 +02:00
Bob Weinand 36527eccbb Fixed build failure introduced by PR #2158
Note: AC_TRY_LINK interprets the source as part of a main function, ending up with int main() { /* ... */ int main() { /* ... */ } ; return 0; } here - Using AC_LINK_IFELSE with AC_LANG_SOURCE directly instead.
2016-10-29 18:49:38 +02:00
Anatol Belski 87cb91ea7c Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix condition
2016-10-29 17:57:33 +02:00
Anatol Belski c7ec36d4fa fix condition 2016-10-29 17:54:26 +02:00
Xinchen Hui e6b7e6081e Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73402 (Opcache segfault when using class constant to call a method)
2016-10-29 23:44:37 +08:00
Xinchen Hui af873d4788 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed bug #73402 (Opcache segfault when using class constant to call a method)

Conflicts:
	ext/opcache/Optimizer/zend_optimizer.c
2016-10-29 23:43:59 +08:00
Xinchen Hui ef75ddd4f9 Fixed bug #73402 (Opcache segfault when using class constant to call a method) 2016-10-29 23:41:51 +08:00
Nikita Popov 29bc6557c8 Optimize __get etc
Cheap 20% win by skipping the function name allocation if we don't
need it.
2016-10-29 14:38:34 +02:00
Xinchen Hui 6b671ca3ed Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Skip if no jit is built
2016-10-29 14:23:47 +08:00
Xinchen Hui 66caa61188 Skip if no jit is built 2016-10-29 14:23:25 +08:00
Anatol Belski 8e4ea7a188 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix test run with autogenerated ini
2016-10-29 03:18:19 +02:00
Anatol Belski ddbcb2084a fix test run with autogenerated ini 2016-10-29 03:17:29 +02:00
Anatol Belski 3f35078857 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  generate test ini file, so shared exts are loaded for nmake test
  additional env is generated for phpize, too
2016-10-29 02:12:05 +02:00
Anatol Belski 5b04a2187e generate test ini file, so shared exts are loaded for nmake test 2016-10-29 02:08:48 +02:00
Anatol Belski f5131c6c04 additional env is generated for phpize, too 2016-10-28 23:11:47 +02:00
Xinchen Hui 103f633092 Update NEWS 2016-10-28 21:21:48 +08:00
Xinchen Hui 7778bdcd04 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73392 (A use-after-free in zend allocator management)
2016-10-28 21:21:35 +08:00
Xinchen Hui e5aa365147 Fixed bug #73392 (A use-after-free in zend allocator management) 2016-10-28 21:21:24 +08:00
Benjamin Morel da22cfe032 Typo 2016-10-28 10:04:23 +02:00
Ferenc Kovacs 2e2433531b Merge branch 'PHP-7.0' into PHP-7.1 2016-10-27 23:40:41 +02:00
Ferenc Kovacs 09a224d702 Merge branch 'PHP-5.6' into PHP-7.0 2016-10-27 23:37:51 +02:00
Ferenc Kovacs 9b3a1e00ab 5.6.29 will be next 2016-10-27 23:10:59 +02:00
Anatol Belski 3f12d852ec Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  use rather the nmake var as it's evaluated on every run
2016-10-27 22:36:00 +02:00
Anatol Belski a481291f02 use rather the nmake var as it's evaluated on every run 2016-10-27 22:34:34 +02:00
Anatol Belski 66f3fcee08 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  prepend known bin folders to the path for nmake test runs
2016-10-27 20:43:25 +02:00
Anatol Belski 1be8339891 prepend known bin folders to the path for nmake test runs 2016-10-27 20:41:41 +02:00
Anatol Belski 931ea5c872 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  yet another uninitialized pointer
2016-10-27 02:45:48 +02:00
Anatol Belski e586c7c612 yet another uninitialized pointer 2016-10-27 02:42:30 +02:00
Anatol Belski 4e3eb4a5f8 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix uninitialized pointer
2016-10-27 02:20:12 +02:00
Anatol Belski b9993c8b6c fix uninitialized pointer 2016-10-27 02:15:14 +02:00
Dmitry Stogov 4616441980 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixded bug #72736 (Slow performance when fetching large dataset with mysqli / PDO)
2016-10-26 15:22:51 +03:00
Dmitry Stogov 3fb0a1a4e7 Fixded bug #72736 (Slow performance when fetching large dataset with mysqli / PDO) 2016-10-26 15:17:09 +03:00
Anatol Belski 81f859b5ce Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  make config.w32 compatible with ICU 58
2016-10-26 13:07:44 +02:00
Anatol Belski 0f9a4af90b make config.w32 compatible with ICU 58 2016-10-26 13:05:03 +02:00
Dmitry Stogov bdd3fec7f8 Fixed incorrec type usage 2016-10-25 22:12:34 +03:00
Yasuo Ohgaki e893abda81 Revert "Update UPGRADING to reflect bug fix"
This change was made in 7.0. Sorry for the noise.

This reverts commit e9c8e50b66.
2016-10-26 04:01:55 +09:00
Yasuo Ohgaki e9c8e50b66 Update UPGRADING to reflect bug fix 2016-10-26 03:26:44 +09:00
Joe Watkins 0d2084b1ce news for next rc 2016-10-25 16:22:23 +01:00
Dmitry Stogov 01bc515b4d Export zend_analyze_calls() to allow building call trees. 2016-10-25 17:20:27 +03:00
Christoph M. Becker c30e5a32c1 Merge branch 'PHP-7.0' into PHP-7.1 2016-10-25 14:35:38 +02:00
Christoph M. Becker af4bfe234c Merge branch 'PHP-5.6' into PHP-7.0 2016-10-25 14:31:41 +02:00
Christoph M. Becker cd13d0260a Fix #72494: imagecropauto out-of-bounds access
This issue has actually already been fixed with commit 46f2c690. We're
adding a regression test and a NEWS entry, and also port the fix in
gdImageCropThreshold() from libgd:
  * <https://github.com/libgd/libgd/commit/b347e034>
  * <https://github.com/libgd/libgd/commit/46f2c690>
2016-10-25 14:29:48 +02:00
Anatol Belski 12bb3cd8d2 fix version 2016-10-25 11:18:07 +02:00
Anatol Belski 41923c1943 set versions 2016-10-25 10:40:23 +02:00
Anatol Belski 1fd3ab4fe9 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  move dev to 7.0.14
2016-10-25 10:31:49 +02:00
Anatol Belski 277e829f10 move dev to 7.0.14 2016-10-25 10:29:51 +02:00
Derick Rethans 7b9a17d797 Updated to version 2016.8 (2016h) 2016-10-24 10:37:17 +01:00
Derick Rethans 4d2cc0149f Empty merge 2016-10-24 10:37:16 +01:00
Derick Rethans 7544040469 Updated to version 2016.8 (2016h) 2016-10-24 10:37:13 +01:00
Derick Rethans 76293254cf Empty merge 2016-10-24 10:37:12 +01:00
Derick Rethans 4f5a755b9d Updated to version 2016.8 (2016h) 2016-10-24 10:37:07 +01:00
Stanislav Malyshev f74d7d92c8 Fix bug #73144 and bug #73341 - remove extra dtor 2016-10-23 22:03:16 -07:00
Stanislav Malyshev 6045de69c7 Fix bug #73331 - do not try to serialize/unserialize objects wddx can not handle
Proper soltion would be to call serialize/unserialize and deal with the result,
but this requires more work that should be done by wddx maintainer (not me).
2016-10-23 20:09:23 -07:00
Nikita Popov cbde0a6fc2 Merge branch 'PHP-7.0' into PHP-7.1 2016-10-23 22:27:11 +02:00
Nikita Popov 89d3e234af Fix test output
Changed due to eca84946a4.
2016-10-23 22:26:25 +02:00
Nikita Popov c3232c5903 Fix call graph construction
Travis build for 7.1+ has been failing for the past week...
2016-10-23 22:12:55 +02:00
Jakub Zelenka 820bca8ca3 Try to fix LibreSSL build 2016-10-23 19:55:22 +01:00
Jakub Zelenka 930ae4034e Drop useless checks for DH and RSA
If DH or RSA was disabled, the build would fail already as
it's used already elsewhere without checking the OPENSSL_NO_DH
or OPENSSL_NO_RSA defines.
2016-10-23 19:37:07 +01:00
Xinchen Hui 7c8650fe81 Update NEWS 2016-10-22 14:51:11 +08:00
Xinchen Hui 788368ff1c Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73350 (Exception::__toString() cause circular references)
2016-10-22 14:50:42 +08:00
Xinchen Hui eca84946a4 Fixed bug #73350 (Exception::__toString() cause circular references) 2016-10-22 14:50:21 +08:00
Anatol Belski 2860fd40d6 Better fix for bug #73360
This also fixes the TS issue. And, it also reveals that there's an
issue in the VCWD_* API to be possibly addressed.
2016-10-21 21:29:35 +02:00
Anatol Belski fbf46d36ca Revert "Fixed bug #73360 Unable to work in root with unicode chars"
This reverts commit 64fee0aecb.
2016-10-21 20:15:16 +02:00
Anatol Belski 9ffc90baf8 update NEWS
The bug is currently not good testable, because the doc_root will be
blocked from the invoked test server process. This will prevent the
cleanup, which would be confusing.
2016-10-21 16:43:55 +02:00
Anatol Belski 64fee0aecb Fixed bug #73360 Unable to work in root with unicode chars 2016-10-21 15:22:59 +02:00
Nikita Popov 736633310c Merge branch 'PHP-7.0' into PHP-7.1 2016-10-20 13:26:34 +02:00
Adam Saponara 55d17662cb Fix bug #71241: array_replace_recursive mutates ref params
`array_replace_recursive` can sometimes mutate its params if
references are nested within. This differs from the PHP 5 behavior.
2016-10-20 13:22:04 +02:00
Leigh f5244f336a Merge branch 'PHP-7.0' into PHP-7.1 2016-10-20 10:18:16 +01:00
Leigh c3361f16c7 Add php_random_int internal API
This is the internal API compliment to `php_random_bytes`
2016-10-20 10:18:07 +01:00
Joe Watkins 1752b44d15 news entry for #pr 2152 2016-10-20 05:23:40 +01:00
Joe Watkins 5de20ef3ae Merge branch 'pull-request/2152' into PHP-7.1 2016-10-20 05:23:21 +01:00
Joe Watkins 9e480a1766 news entry for #pr 2152 2016-10-20 05:21:56 +01:00
Joe Watkins 295377630a Merge branch 'pull-request/2152' into PHP-7.0 2016-10-20 05:19:10 +01:00
Dmitry Stogov 565ce0d41d Fixed typo 2016-10-20 01:17:40 +03:00
Dmitry Stogov 9ded1b4edb Introduced HT_IS_PACKED() and HT_IS_WITHOUT_HOLES() macros. (Benjamin Coutu) 2016-10-19 23:10:42 +03:00
Anatol Belski eaba20999b update NEWS 2016-10-18 19:44:20 +02:00
Anatol Belski 744ea9721e Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS
2016-10-18 19:43:57 +02:00
Anatol Belski b754bc797c update NEWS 2016-10-18 19:43:12 +02:00
Anatol Belski 671f647739 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73329 (Float)"Nano" == NAN
2016-10-18 19:14:14 +02:00
Anatol Belski 9f2ab75b10 Fixed bug #73329 (Float)"Nano" == NAN
The special cases (float)"inf", etc. were never intended and are
caused by the updated strtod lib. While it might be nice as an
easy way to produce Inf and NaN special values, it was never
documented and cause BC breaches.
2016-10-18 19:11:18 +02:00
Anatol Belski 1c7a53a3c0 sync NEWS 2016-10-18 18:24:42 +02:00
Anatol Belski 6d6616cc9d Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  sync NEWS
2016-10-18 18:22:52 +02:00
Anatol Belski b4371a4292 sync NEWS
48f1a178 is reverted
2016-10-18 18:18:04 +02:00
Bob Weinand 58f3b9c0ef Merge remote-tracking branch 'origin/PHP-7.0' into PHP-7.1 2016-10-18 14:31:49 +02:00
Bob Weinand 8b177f6a2a Fixed bug #73338 (Exception thrown from error handler may crash) 2016-10-18 14:14:24 +02:00
Dmitry Stogov c31d66b3fd Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73337 (try/catch not working with two exceptions inside a same operation)
  Revert "Fix bug #47890 #73215 uniqid() should use better random source"
  Update NEWS
2016-10-18 15:09:44 +03:00
Dmitry Stogov 7bd4e7208e Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed bug #73337 (try/catch not working with two exceptions inside a same operation)
2016-10-18 15:04:49 +03:00
Dmitry Stogov 6558559bcc Fixed bug #73337 (try/catch not working with two exceptions inside a same operation) 2016-10-18 14:48:01 +03:00
Joe Watkins 689cf8b266 Revert "Fix bug #47890 #73215 uniqid() should use better random source"
This reverts commit 48f1a17886.
2016-10-18 11:30:33 +01:00
Joe Watkins 8c74be0c52 Revert "Fix bug #47890 #73215 uniqid() should use better random source"
This reverts commit 48f1a17886.
2016-10-18 11:30:19 +01:00
Dmitry Stogov ac6134fb64 Fixed type inference rules. 2016-10-18 12:39:33 +03:00
Yasuo Ohgaki 10a075fbd5 Update NEWS 2016-10-18 09:28:18 +09:00
Yasuo Ohgaki 14beea9a36 Update NEWS 2016-10-18 09:28:08 +09:00
Yasuo Ohgaki 235cb691e1 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix bug #47890 #73215 uniqid() should use better random source
2016-10-18 09:14:48 +09:00
Yasuo Ohgaki 48f1a17886 Fix bug #47890 #73215 uniqid() should use better random source 2016-10-18 09:13:42 +09:00
Christoph M. Becker 32123167d1 Merge branch 'PHP-7.0' into PHP-7.1 2016-10-18 00:01:32 +02:00
Yasuo Ohgaki 70afe4c494 Simply return FALSE from session_gc(). Error could be annoying because internal save handlers may return -1 when GC cannot be performed for reasons 2016-10-18 06:53:13 +09:00
Christoph M. Becker 0b596f81b8 Merge branch 'PHP-5.6' into PHP-7.0
We also use ZEND_LONG_(MAX|MIN) now instead of LONG_(MAX|MIN).
2016-10-17 23:38:28 +02:00
Christoph M. Becker 86e603a664 Fix #73333: 2147483647 is fetched as string
We return all integers that can be represented as such by PHP as
integers, and only those that exceed the possible range as strings.
On builds which represent integers with 64 bits, the range check is
unnecessary and might cause code checkers to complain, so we skip this
special casing via the preprocessor according to
<http://git.php.net/?p=php-src.git;a=commit;h=99d087e5>.
2016-10-17 23:34:41 +02:00
Dmitry Stogov ed3196ea35 Use simple "one-pass" algorithm. 2016-10-18 00:06:20 +03:00
Anatol Belski faa2a43d4b Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  sync NEWS
  Merge branch 'pull-request/1817'
  Merge branch 'pull-request/1816'
  Merge branch 'pull-request/1814'
  Merge branch 'pull-request/1808'
  Merge branch 'pull-request/2097'
  news entry for pr #2158
  Merge branch 'pull-request/2158'
2016-10-17 21:27:32 +02:00
Anatol Belski f85cc6aead sync NEWS 2016-10-17 21:26:34 +02:00
Joe Watkins dcae3ce1e6 Merge branch 'pull-request/1817' 2016-10-17 17:02:22 +01:00
Joe Watkins 4dfd5f4403 Merge branch 'pull-request/1816' 2016-10-17 17:02:19 +01:00
Joe Watkins d6fb5a1f1e Merge branch 'pull-request/1814' 2016-10-17 17:02:13 +01:00
Joe Watkins b274be5d9d Merge branch 'pull-request/1808' 2016-10-17 17:02:07 +01:00
Joe Watkins 39ee3184ee Merge branch 'pull-request/1817' 2016-10-17 17:01:39 +01:00
Joe Watkins 5eb84337a6 Merge branch 'pull-request/1816' 2016-10-17 17:01:28 +01:00
Joe Watkins 522e4f1174 Merge branch 'pull-request/1814' 2016-10-17 17:01:10 +01:00
Joe Watkins 6806a41e7f Merge branch 'pull-request/1808' 2016-10-17 17:00:50 +01:00
Joe Watkins 96ed946b2b Merge branch 'pull-request/2097' 2016-10-17 16:03:12 +01:00
Joe Watkins 63166412a2 Merge branch 'pull-request/2097' 2016-10-17 16:02:51 +01:00
Joe Watkins bd6bce888a news entry for pr #2158 2016-10-17 15:50:59 +01:00
Joe Watkins 8d6cc00cbd Merge branch 'pull-request/2158' 2016-10-17 15:48:32 +01:00
Joe Watkins cc80ca9b84 news entry for pr #2158 2016-10-17 14:47:08 +01:00
Joe Watkins ae6fc21f14 Merge branch 'pull-request/2158' 2016-10-17 14:46:03 +01:00
Joe Watkins 6091873d4a Revert "Fixed bug #73067 (__debugInfo crashes when throwing an exception)"
This reverts commit 2d8ab51576.
2016-10-17 14:22:55 +01:00
Joe Watkins 5fa76095bb Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1 2016-10-17 14:12:15 +01:00
Joe Watkins fe02227524 sync news from 7.1.0RC4 2016-10-17 14:11:39 +01:00
Remi Collet 0820c94382 also fix 32bits test for microsecond 2016-10-17 15:07:56 +02:00
Joe Watkins 6766a985eb bump news version 2016-10-17 11:31:34 +01:00
Christopher Jones 72041580bd Update 7.1 NEWS for bug #71148 2016-10-17 12:52:34 +11:00
Christopher Jones 23e2c356b7 Merge branch 'PHP-7.0' into PHP-7.1 2016-10-17 12:40:54 +11:00
Christopher Jones 8be59a1301 Fixed bug #71148 (Bind reference overwritten on PHP 7) 2016-10-17 12:40:14 +11:00
Bob Weinand f8c2089651 Merge branch 'PHP-7.0' into PHP-7.1 2016-10-16 15:46:33 +02:00
Bob Weinand d82da7de3a Fixed bug #71234 (INI files are loaded even invoked as phpdbg -n --version) 2016-10-16 15:41:37 +02:00
Bob Weinand 47bd3d982e Merge branch 'PHP-7.0' into PHP-7.1 2016-10-16 13:48:13 +02:00
Bob Weinand e93eaee164 Fixed bug #70776 (Simple SIGINT does not have any effect) 2016-10-16 13:47:49 +02:00
Bob Weinand 601ab6e9d0 Fix searching for catch blocks
Since PHP-7.1 catch blocks are addressed with relative byte difference between two catch blocks as opposed to absolute opcode number
2016-10-16 12:34:10 +02:00
Nikita Popov 9f472ba5e3 Various function info fixes 2016-10-15 23:58:31 +02:00
Nikita Popov 659cc278e2 Various RC inference fixes 2016-10-15 23:58:29 +02:00
Nikita Popov 1903fc6298 Fix SplFixedArray::offsetGet() invocation for NULL offset 2016-10-15 23:58:28 +02:00
Nikita Popov b1fc1fb937 Normalize preg_replace_callback() return value
One particular error case was returning the argument without
casting to string.
2016-10-15 23:58:26 +02:00
Christoph M. Becker 663491b9ba Update to SQLite 3.15.0 2016-10-15 19:46:00 +02:00
Anatol Belski 3d7cd272ef Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  sync NEWS
2016-10-14 19:52:52 +02:00
Anatol Belski 6d91772c2f sync NEWS 2016-10-14 19:52:04 +02:00
Remi Collet 20b1029e4c Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  bump ext/zip version
2016-10-14 17:31:26 +02:00
Remi Collet f1cf340e19 bump ext/zip version 2016-10-14 17:31:07 +02:00
Christoph M. Becker 2cc3aeb4b9 Implement #72918: negative offset inside a quoted string leads to parse error
We allow negative numeric offsets for the simple syntax inside
double-quoted and heredoc strings.
2016-10-14 14:14:08 +02:00
Christoph M. Becker 6e3ab61fa5 Update NEWS
This entry has been lost due to a bad merge.
2016-10-14 13:52:21 +02:00
Bob Weinand 386aff451b Merge branch 'PHP-7.0' into PHP-7.1 2016-10-14 12:25:16 +02:00
Bob Weinand 466870e2b0 Fix memory leak when compiling files in phpdbg 2016-10-14 12:24:28 +02:00
Remi Collet aecd165b8f Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  use zend_error instead of zend_error_noreturn
2016-10-14 10:54:47 +02:00
Remi Collet 428ef50838 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  use zend_error instead of zend_error_noreturn
2016-10-14 10:54:09 +02:00
Remi Collet e1f5b6d8df use zend_error instead of zend_error_noreturn 2016-10-14 10:53:40 +02:00
Ferenc Kovacs 65e6f7e16f Merge branch 'PHP-7.0' into PHP-7.1 2016-10-14 08:09:29 +02:00
Ferenc Kovacs d0b9d72da7 Merge branch 'PHP-5.6' into PHP-7.0 2016-10-14 08:08:10 +02:00
Ferenc Kovacs f7bf9650aa add missing NEWS entries for 5.6.27 2016-10-14 08:06:14 +02:00
Keith Smiley 3b9ba6195d soap #69137 - Invert logic to be correct 2016-10-13 23:56:24 -04:00
Anatol Belski 84a5821212 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0: (62 commits)
  missed piece for renaming
  rename publicly exposed symbol to avoid name conflicts
  Ignore non-executable opcodes in line mode of phpdbg_end_oplog()
  Fix #73280: Stack Buffer Overflow in GD dynamicGetbuf
  use already exported symbol
  Revert "export symbol missing by phpdbg"
  Fix outlen for openssl function
  Syncronize with 5.6 - __toString should return ""
  Fix potential overflows in php_pcre_replace_impl
  Fixed bug #73237
  Fixed bug in zend_accel_error() and cleaned up kill_all_lockers()
  Update NEWS
  Fix phpdbg tests after lineno change
  Fix line number of implicit return in pseudo-main scope
  export symbol missing by phpdbg
  Fix accidental PHPDBG_ABI break
  Fix bug #73189 - Memcpy negative size parameter php_resolve_path
  update len in fallback cases
  Add stdin command and -s command line parameter to phpdbg
  Fix bug #73190: memcpy negative parameter _bc_new_num_ex
  ...
2016-10-14 04:19:16 +02:00
Anatol Belski d35d9d1d0e missed piece for renaming
(cherry picked from commit 5ba9eab436)
2016-10-14 02:08:28 +02:00
Anatol Belski dd604015be rename publicly exposed symbol to avoid name conflicts
(cherry picked from commit 730288ae41)
2016-10-14 02:08:14 +02:00
Bob Weinand 990e2ce2a0 Ignore non-executable opcodes in line mode of phpdbg_end_oplog()
(cherry picked from commit d14498a475)
2016-10-14 02:03:46 +02:00
Anatol Belski c79f9a4e49 fix gettimeofday proto availability
(cherry picked from commit 79f7d174d0)
2016-10-14 02:03:02 +02:00
Christoph M. Becker 0864915550 Fix #73280: Stack Buffer Overflow in GD dynamicGetbuf
We make sure to never pass a negative `rlen` as size to memcpy().

Cf. <https://github.com/libgd/libgd/commit/53110871>.

(cherry picked from commit cc08cbc84d)
2016-10-14 02:02:42 +02:00
Anatol Belski 20b63996c0 fix test
(cherry picked from commit 57354e0313)
2016-10-14 02:01:53 +02:00
Anatol Belski 5ce2230266 use already exported symbol
(cherry picked from commit ce3e792c2c)
2016-10-14 02:01:22 +02:00
Anatol Belski ee42529750 Revert "export symbol missing by phpdbg"
This reverts commit 611ab7fe5b.

Overseen strpprintf is there

(cherry picked from commit 3104882cf8)
2016-10-14 02:01:08 +02:00
Stanislav Malyshev 177e6adca7 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix outlen for openssl function
  Syncronize with 5.6 - __toString should return ""
  Fix potential overflows in php_pcre_replace_impl

(cherry picked from commit ff75665663)
2016-10-14 01:58:48 +02:00
Stanislav Malyshev 94b7ab185c Syncronize with 5.6 - __toString should return ""
(cherry picked from commit 2301608736)
2016-10-14 01:58:08 +02:00
Stanislav Malyshev 0362d61ab7 Fix potential overflows in php_pcre_replace_impl
(cherry picked from commit 9c50ba42d6)
2016-10-14 01:57:55 +02:00
Keith Smiley ddaf04053b Fixed bug #73237
If the response includes both fields with simple types (which get
concatenated into an XML string) and a complex type (which is parsed
into an object), then the object will parsed into the same zval as the
simple types and will overwrite the string.

(cherry picked from commit 26287132c0)
2016-10-14 01:57:04 +02:00
Anatol Belski b4ddf4e575 fix another mistake
(cherry picked from commit bec0121733)
2016-10-14 01:56:31 +02:00
Mitch Hagstrand 01a280a9c7 Fixed bug in zend_accel_error() and cleaned up kill_all_lockers()
1. zend_accel_error was only executing clean up if log_verbosity_level is high enough to log
2. Cleaned up kill_all_lockers function and fixed comments.

(cherry picked from commit bcee2fdbec)
2016-10-14 01:56:01 +02:00
Bob Weinand f40c03168e Merge remote-tracking branch 'origin/PHP-7.0' into PHP-7.1
(cherry picked from commit 457e686262)
2016-10-14 01:54:18 +02:00
Nikita Popov 6baaccc9b6 Merge branch 'PHP-7.0' into PHP-7.1
(cherry picked from commit 9669ec707a)
2016-10-14 01:53:25 +02:00
Nikita Popov 0e4c173349 Merge branch 'PHP-7.0' into PHP-7.1
(cherry picked from commit 26964ccea0)
2016-10-14 01:52:17 +02:00
Anatol Belski 4e338817d1 export symbol missing by phpdbg
(cherry picked from commit 611ab7fe5b)
2016-10-14 01:51:21 +02:00
Bob Weinand 06df34072e Fix accidental PHPDBG_ABI break
(cherry picked from commit 671d8054f8)
2016-10-14 01:50:48 +02:00
Stanislav Malyshev f8be3ede4f Fix bug #73189 - Memcpy negative size parameter php_resolve_path
(cherry picked from commit da7e89cde8)
(cherry picked from commit c4c2cce37d)
2016-10-14 01:50:22 +02:00
Anatol Belski 6f9c3b4558 update len in fallback cases
(cherry picked from commit 58b18892bf)
2016-10-14 01:49:55 +02:00
Anatol Belski 2c38f70a94 fix wrong merge
(cherry picked from commit 821a230f29)
2016-10-14 01:49:39 +02:00
Bob Weinand 11e7447e04 Merge branch 'PHP-7.0' into PHP-7.1
(cherry picked from commit 37ae5f3931)
2016-10-14 01:48:03 +02:00
Anatol Belski a8a11b669d Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix bug #73190: memcpy negative parameter _bc_new_num_ex

(cherry picked from commit af1bf873fe)
2016-10-14 01:46:18 +02:00
Anatol Belski 06e7c9983a fix test
(cherry picked from commit fa9370db03)
2016-10-14 01:44:45 +02:00
Anatol Belski a6715786a7 finish 7.1 port
(cherry picked from commit f1fff032fc)
2016-10-14 01:44:31 +02:00
Stanislav Malyshev 54003ab663 Fix bug #73147: Use After Free in PHP7 unserialize()
(cherry picked from commit 0e6fe3a4c9)
(cherry picked from commit f42cbd749c)
2016-10-14 01:44:16 +02:00
Anatol Belski a5e9a73db2 fix typo
(cherry picked from commit efc1f33b58)
2016-10-14 01:43:54 +02:00
Anatol Belski 41ed9d1f9f Revert "Fix for #73240 - Write out of bounds at number_format"
This reverts commit 01280f8deb.

The fix is already merged by Stas.

(cherry picked from commit 80eb013a92)
2016-10-14 01:43:23 +02:00
Anatol Belski 7897e8cd6c followup with #73276 merge
(cherry picked from commit b135ba3fa9)
2016-10-14 01:43:02 +02:00
Anatol Belski 48f06ada89 fix test
(cherry picked from commit 7c6cb1282d)
2016-10-14 01:42:50 +02:00
Stanislav Malyshev fe789b3f7c Fix bug #73276 - crash in openssl_random_pseudo_bytes function
(cherry picked from commit 85a22a0af0)
(cherry picked from commit 7dc8b5e7ae)
2016-10-14 01:42:19 +02:00
Stanislav Malyshev e7e60851ae Fix bug #73293 - NULL pointer dereference in SimpleXMLElement::asXML()
(cherry picked from commit 96a8cf8e1b)
(cherry picked from commit 4ef79370a8)
2016-10-14 01:42:05 +02:00
Stanislav Malyshev 8e2c9024a6 Fix for #73240 - Write out of bounds at number_format
(cherry picked from commit 8259130b6b)
(cherry picked from commit 01280f8deb)
2016-10-14 01:41:48 +02:00
Anatol Belski 0cf880e70c avoid strlen
(cherry picked from commit aaa5d07365)
2016-10-14 01:41:32 +02:00
Stanislav Malyshev d25e427ab1 Bug #73218: add mitigation for ICU int overflow
(cherry picked from commit d946d10293)
(cherry picked from commit b26b02b2df)
2016-10-14 01:41:06 +02:00
Stanislav Malyshev 0d9d133cd6 Add more locale length checks, due to ICU bugs.
(cherry picked from commit d3eb58332a)
(cherry picked from commit 87a8240b5a)
2016-10-14 01:40:36 +02:00
Stanislav Malyshev 336322ce63 Fix bug #73150: missing NULL check in dom_document_save_html
(cherry picked from commit 1c0e9126fb)
(cherry picked from commit d1e878f272)
2016-10-14 01:40:12 +02:00
Stanislav Malyshev 6b2992f54c Fix for #73240 - Write out of bounds at number_format
(cherry picked from commit 3b5262ec4c)
2016-10-14 01:37:13 +02:00
Stanislav Malyshev f901dce575 Fix bug #73257 and bug #73258 - SplObjectStorage unserialize allows use of non-object as key
(cherry picked from commit 61cdd1255d)
2016-10-14 01:36:57 +02:00
Stanislav Malyshev c4254588a9 Fix bug #73091 - Unserializing DateInterval object may lead to __toString invocation
(cherry picked from commit 1b29e4488e)
2016-10-14 01:36:38 +02:00
Xinchen Hui c9274d20b7 Fixed bug #73288 (Segfault in __clone > Exception.toString > __get)
Actually this is caused by optimization(opcache)

(cherry picked from commit d19898b298)
2016-10-14 01:35:39 +02:00
Sara Golemon 25d4943b44 Clear FG(user_stream_current_filename) when bailing out
If a userwrapper opener E_ERRORs then FG(user_stream_current_filename)
would remain set until the next request and would not be pointing
at unallocated memory.

Catch the bailout, clear the variable, then continue bailing.

Closes https://bugs.php.net/bug.php?id=73188

(cherry picked from commit 9f86cdaf7f)
2016-10-14 01:34:51 +02:00
Dmitry Stogov e92a18dcd5 Fixed referencecounter inference rules
(cherry picked from commit 6046a99b97)
2016-10-14 01:24:46 +02:00
Dmitry Stogov 233992409b Fixed referencecounter inference rules
(cherry picked from commit fae7d6b9bb)
2016-10-14 01:24:23 +02:00
Anatol Belski 5a2dd84314 add test for bug #73037
(cherry picked from commit 256b150a96)
2016-10-14 01:21:18 +02:00
Yasuo Ohgaki bccc1dd1e7 Update UPGRADING 2016-10-14 07:53:16 +09:00
Anatol Belski 5ba9eab436 missed piece for renaming 2016-10-13 15:39:02 +02:00
Anatol Belski 730288ae41 rename publicly exposed symbol to avoid name conflicts 2016-10-13 15:23:50 +02:00
Bob Weinand d14498a475 Ignore non-executable opcodes in line mode of phpdbg_end_oplog() 2016-10-13 14:09:56 +02:00
Christoph M. Becker b8fab503fe Merge branch 'PHP-5.6' into PHP-7.0 2016-10-13 11:25:11 +02:00
Christoph M. Becker cc08cbc84d Fix #73280: Stack Buffer Overflow in GD dynamicGetbuf
We make sure to never pass a negative `rlen` as size to memcpy().

Cf. <https://github.com/libgd/libgd/commit/53110871>.
2016-10-13 11:10:02 +02:00
Anatol Belski ce3e792c2c use already exported symbol 2016-10-13 09:55:37 +02:00
Anatol Belski 3104882cf8 Revert "export symbol missing by phpdbg"
This reverts commit 611ab7fe5b.

Overseen strpprintf is there
2016-10-13 09:50:32 +02:00
Stanislav Malyshev cd8c9b0614 Fix outlen for openssl function
Even though datalen can't be over int, outlen can.
2016-10-12 23:19:07 -07:00
Stanislav Malyshev 2301608736 Syncronize with 5.6 - __toString should return "" 2016-10-12 23:09:49 -07:00
Stanislav Malyshev 9c50ba42d6 Fix potential overflows in php_pcre_replace_impl 2016-10-12 23:07:47 -07:00
Anatol Belski 0723a226c3 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Clear FG(user_stream_current_filename) when bailing out
  Fix tests
  fix tsrm
  Fix bug #73284 - heap overflow in php_ereg_replace function
  Fix bug #73276 - crash in openssl_random_pseudo_bytes function
  Fix bug #73293 - NULL pointer dereference in SimpleXMLElement::asXML()
  fix bug #73275 - crash in openssl_encrypt function
  Fix for #73240 - Write out of bounds at number_format
  Bug #73218: add mitigation for ICU int overflow
  Add more locale length checks, due to ICU bugs.
  Fix bug #73208 - another missing length check
  Fix bug #73190: memcpy negative parameter _bc_new_num_ex
  Fix bug #73189 - Memcpy negative size parameter php_resolve_path
  Fixed bug #73174 - heap overflow in php_pcre_replace_impl
  Fix bug #73150: missing NULL check in dom_document_save_html
  Fix bug #73147: Use After Free in PHP7 unserialize()
  Fix bug #73082
  Fix bug #73073 - CachingIterator null dereference when convert to string
2016-10-13 01:31:36 +02:00
Keith Smiley 26287132c0 Fixed bug #73237
If the response includes both fields with simple types (which get
concatenated into an XML string) and a complex type (which is parsed
into an object), then the object will parsed into the same zval as the
simple types and will overwrite the string.
2016-10-12 23:12:45 +02:00
Mitch Hagstrand bcee2fdbec Fixed bug in zend_accel_error() and cleaned up kill_all_lockers()
1. zend_accel_error was only executing clean up if log_verbosity_level is high enough to log
2. Cleaned up kill_all_lockers function and fixed comments.
2016-10-12 23:03:55 +02:00
Bob Weinand fe49fd7dad Update NEWS
Also add missing include.inc test file
2016-10-12 22:54:32 +02:00
Nikita Popov fe378c27cc Fix phpdbg tests after lineno change 2016-10-12 22:41:59 +02:00
Nikita Popov 5b429fef42 Fix line number of implicit return in pseudo-main scope 2016-10-12 22:25:41 +02:00
Anatol Belski 611ab7fe5b export symbol missing by phpdbg 2016-10-12 22:18:41 +02:00
Bob Weinand 671d8054f8 Fix accidental PHPDBG_ABI break 2016-10-12 22:16:11 +02:00
Stanislav Malyshev c4c2cce37d Fix bug #73189 - Memcpy negative size parameter php_resolve_path
(cherry picked from commit da7e89cde8)
2016-10-12 21:31:37 +02:00
Anatol Belski 58b18892bf update len in fallback cases 2016-10-12 20:52:46 +02:00
Bob Weinand 5aae01104f Add stdin command and -s command line parameter to phpdbg
This allows reading the initial script file from stdin instead of being forced to put the script into a file in order to run it with phpdbg.
Especially important for programmatic execution of phpdbg.

Also adding tests/include_once.phpt and tests/set_exception_handler.phpt as I seem to have forgotten to git add them sometime long ago...
2016-10-12 20:15:49 +02:00
Stanislav Malyshev 74b5662536 Fix bug #73190: memcpy negative parameter _bc_new_num_ex
(cherry picked from commit 40e7baab3c)
2016-10-12 19:48:25 +02:00
Stanislav Malyshev f42cbd749c Fix bug #73147: Use After Free in PHP7 unserialize()
(cherry picked from commit 0e6fe3a4c9)
2016-10-12 17:51:15 +02:00
Anatol Belski efc1f33b58 fix typo 2016-10-12 17:12:38 +02:00
Anatol Belski 80eb013a92 Revert "Fix for #73240 - Write out of bounds at number_format"
This reverts commit 01280f8deb.

The fix is already merged by Stas.
2016-10-12 16:12:18 +02:00
Anatol Belski b135ba3fa9 followup with #73276 merge 2016-10-12 16:03:35 +02:00
Anatol Belski 7c6cb1282d fix test 2016-10-12 16:03:09 +02:00
Stanislav Malyshev 7dc8b5e7ae Fix bug #73276 - crash in openssl_random_pseudo_bytes function
(cherry picked from commit 85a22a0af0)
2016-10-12 15:55:42 +02:00
Stanislav Malyshev 4ef79370a8 Fix bug #73293 - NULL pointer dereference in SimpleXMLElement::asXML()
(cherry picked from commit 96a8cf8e1b)
2016-10-12 15:40:21 +02:00
Stanislav Malyshev 01280f8deb Fix for #73240 - Write out of bounds at number_format
(cherry picked from commit 8259130b6b)
2016-10-12 14:55:00 +02:00
Anatol Belski aaa5d07365 avoid strlen 2016-10-12 13:28:23 +02:00
Stanislav Malyshev b26b02b2df Bug #73218: add mitigation for ICU int overflow
(cherry picked from commit d946d10293)
2016-10-12 13:22:51 +02:00
Stanislav Malyshev 87a8240b5a Add more locale length checks, due to ICU bugs.
(cherry picked from commit d3eb58332a)
2016-10-12 13:11:16 +02:00
Stanislav Malyshev d1e878f272 Fix bug #73150: missing NULL check in dom_document_save_html
(cherry picked from commit 1c0e9126fb)
2016-10-12 12:19:41 +02:00
Sara Golemon 43ccf23d70 Clear FG(user_stream_current_filename) when bailing out
If a userwrapper opener E_ERRORs then FG(user_stream_current_filename)
would remain set until the next request and would not be pointing
at unallocated memory.

Catch the bailout, clear the variable, then continue bailing.

Closes https://bugs.php.net/bug.php?id=73188
2016-10-11 21:55:01 -07:00
Sara Golemon 4d11a8eedf Clear FG(user_stream_current_filename) when bailing out
If a userwrapper opener E_ERRORs then FG(user_stream_current_filename)
would remain set until the next request and would not be pointing
at unallocated memory.

Catch the bailout, clear the variable, then continue bailing.

Closes https://bugs.php.net/bug.php?id=73188
2016-10-11 21:44:14 -07:00
Stanislav Malyshev 1bdb30a429 Merge branch 'PHP-7.0.12' into PHP-7.0
* PHP-7.0.12:
  set versions and release date
  sync NEWS
  Revert "Fixed bug #73067 (__debugInfo crashes when throwing an exception)"
  Fix for #73240 - Write out of bounds at number_format
  Fix bug #73257 and bug #73258 - SplObjectStorage unserialize allows use of non-object as key
  set versions
  Fix bug #73091 - Unserializing DateInterval object may lead to __toString invocation
2016-10-11 16:46:51 -07:00
Stanislav Malyshev 9c675607e6 Merge remote-tracking branch 'origin/PHP-7.0.12' into PHP-7.0.12
* origin/PHP-7.0.12: (99 commits)
  set versions and release date
  sync NEWS
  Revert "Fixed bug #73067 (__debugInfo crashes when throwing an exception)"
  set versions
  update NEWS
  Ignore potentially misleading dberr values
  update NEWS
  Fixed bug #73172 parse error: Invalid numeric literal
  Fix #53745: cgi.discard_path option is missing from php.ini
  update libs_versions.txt
  update libs_versions.txt
  Fixed bug #73156 (segfault on undefined function)
  Add an include path for freetype which is relevant for cmake builds
  Fix test_image_equals_file() wrt. palette images
  Fixed bug #73163
  Fix #73161: imagecreatefromgd2() may leak memory
  Fix #73159: imagegd2(): unrecognized formats may result in corrupted files
  Fix #73155: imagegd2() writes wrong chunk sizes on boundaries
  Fix #73157 (again): imagegd2() ignores 3rd param if 4 are given
  Fix #73157: imagegd2() ignores 3rd param if 4 are given
  ...
2016-10-11 16:27:13 -07:00
Stanislav Malyshev 689a9b8def Merge branch 'PHP-5.6.27' into PHP-5.6
* PHP-5.6.27:
  Fix tests
  fix tsrm
  Fix bug #73284 - heap overflow in php_ereg_replace function
  Fix bug #73276 - crash in openssl_random_pseudo_bytes function
  Fix bug #73293 - NULL pointer dereference in SimpleXMLElement::asXML()
  fix bug #73275 - crash in openssl_encrypt function
  Fix for #73240 - Write out of bounds at number_format
  Bug #73218: add mitigation for ICU int overflow
  Add more locale length checks, due to ICU bugs.
  Fix bug #73208 - another missing length check
  Fix bug #73190: memcpy negative parameter _bc_new_num_ex
  Fix bug #73189 - Memcpy negative size parameter php_resolve_path
  Fixed bug #73174 - heap overflow in php_pcre_replace_impl
  Fix bug #73150: missing NULL check in dom_document_save_html
  Fix bug #73147: Use After Free in PHP7 unserialize()
  Fix bug #73082
  Fix bug #73073 - CachingIterator null dereference when convert to string
2016-10-11 16:26:35 -07:00
Stanislav Malyshev 082d1f2375 Fix tests 2016-10-11 16:18:08 -07:00
Stanislav Malyshev c1112ff323 fix tsrm 2016-10-11 14:39:16 -07:00
Stanislav Malyshev 21452a5401 Fix bug #73284 - heap overflow in php_ereg_replace function 2016-10-11 14:16:51 -07:00
Stanislav Malyshev 85a22a0af0 Fix bug #73276 - crash in openssl_random_pseudo_bytes function 2016-10-11 13:37:47 -07:00
Stanislav Malyshev 96a8cf8e1b Fix bug #73293 - NULL pointer dereference in SimpleXMLElement::asXML() 2016-10-11 13:30:52 -07:00
Stanislav Malyshev 8822f7c9f0 fix bug #73275 - crash in openssl_encrypt function 2016-10-11 13:19:20 -07:00
Anatol Belski 5899f76a7d update NEWS 2016-10-11 11:41:45 +02:00
Anatol Belski 92c55f1580 set versions and release date 2016-10-11 11:26:32 +02:00
Anatol Belski a5f40e2656 sync NEWS 2016-10-11 11:25:00 +02:00
Anatol Belski 8c9f639a1d Revert "Fixed bug #73067 (__debugInfo crashes when throwing an exception)"
This reverts commit 2d8ab51576.
2016-10-11 11:24:08 +02:00
Stanislav Malyshev 3b5262ec4c Fix for #73240 - Write out of bounds at number_format 2016-10-10 23:49:28 -07:00
Stanislav Malyshev 8259130b6b Fix for #73240 - Write out of bounds at number_format 2016-10-10 23:42:50 -07:00
Stanislav Malyshev 61cdd1255d Fix bug #73257 and bug #73258 - SplObjectStorage unserialize allows use of non-object as key 2016-10-10 22:54:29 -07:00
Anatol Belski 29a089d3c9 update NEWS 2016-10-10 20:57:57 +02:00
Anatol Belski bf400108d9 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2016-10-10 20:57:23 +02:00
Anatol Belski 4165d97606 update NEWS 2016-10-10 20:55:44 +02:00
Anatol Belski 62c68f7483 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  add test for bug #73037
2016-10-10 16:02:30 +02:00
Anatol Belski 256b150a96 add test for bug #73037 2016-10-10 15:59:52 +02:00
Anatol Belski 4b8bdac8db add zend_bailout to cppcheck conf 2016-10-10 13:11:45 +02:00
Nikita Popov 28edc971e7 Merge branch 'PHP-7.0' into PHP-7.1 2016-10-10 12:21:15 +02:00
Nikita Popov c91f652ddb Fixed bug #73273
As well as a few other $_SESSION separation issues.
2016-10-10 12:20:44 +02:00
Christoph M. Becker 0f40ca989a Merge branch 'PHP-7.0' into PHP-7.1 2016-10-10 12:12:13 +02:00
Christoph M. Becker fb08216b08 Merge branch 'PHP-5.6' into PHP-7.0 2016-10-10 11:45:53 +02:00
Christoph M. Becker fc989fc6e7 Fix #73279: Integer overflow in gdImageScaleBilinearPalette()
The color components are supposed to be in range 0..255, so we must not
cast them to `signed char`, what can be the default for `char`.

Port of <https://github.com/libgd/libgd/commit/77c8d359>.
2016-10-10 11:41:39 +02:00
Dmitry Stogov 3760bc5407 Removed deprecated flag 2016-10-10 11:48:29 +03:00
Dmitry Stogov 771600ee6b Fixed information about possible return value 2016-10-10 11:46:43 +03:00
Christoph M. Becker a16f0c5e01 Merge branch 'PHP-7.0' into PHP-7.1 2016-10-09 15:21:40 +02:00
Christoph M. Becker c930714cbe Merge branch 'PHP-5.6' into PHP-7.0 2016-10-09 15:14:17 +02:00
Christoph M. Becker b92216b97d Fix #73272: imagescale() affects imagesetinterpolation()
We must not permanently change the interpolation method, but rather
have to restore the old method after we're done with scaling the image.
2016-10-09 15:10:34 +02:00
Christoph M. Becker ed282f110b Remove channels from getimagesize() results for WebP
Both lossless and lossy WebP can have an alpha channel, but this is
somewhat hard to detect. Furthermore, it is not clear whether an alpha
channel should be counted for getimagesize(). Therefore we remove the
`channel` element from the result array.
2016-10-08 19:47:32 +02:00
Anatol Belski c43a54e4fe Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix leak
2016-10-08 19:28:21 +02:00
Anatol Belski 6f84ac721b Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix leak
2016-10-08 19:25:36 +02:00
Anatol Belski 3c5742ebd7 fix leak 2016-10-08 19:07:35 +02:00
Nikita Popov f8a6df4706 Merge branch 'PHP-7.0' into PHP-7.1 2016-10-08 17:00:56 +02:00
Nikita Popov 2a75f5026a Fix bug #66773, #66862
This a partial backport of 8754b19. It
a) fixes the class/function/constant import table confusion in the
   namespaced case, and
b) restricts conflict checks to a single file based on a filename
   pointer comparison.

It does not fix the issues with filename reuse (e.g. due to eval)
and late-bound classes. This part of the change requires globals
changes.
2016-10-08 17:00:27 +02:00
Christoph M. Becker 1d977e55d9 Add VP8X support to getimagesize() and friends
This ammends commit 14d4ee93 to also add support for the extended
WebP format, according to
<https://developers.google.com/speed/webp/docs/riff_container>.
2016-10-08 15:06:07 +02:00
Christoph M. Becker 5540aba258 Fix WS
As discussed in
<https://github.com/php/php-src/commit/14d4ee93#commitcomment-19344508>.
2016-10-08 11:22:12 +02:00
Christoph M. Becker 59cd8eb723 Add VP8L support to getimagesize() and friends
This ammends commit 14d4ee93 to also add support for simple lossless
WebP, according to
<https://chromium.googlesource.com/webm/libwebp/+/master/doc/webp-lossless-bitstream-spec.txt>
2016-10-08 10:22:04 +02:00
Nikita Popov 9c1c8be7a2 Merge branch 'PHP-7.0' into PHP-7.1 2016-10-08 01:10:37 +02:00
Nikita Popov 159de7723e Merge branch 'PHP-5.6' into PHP-7.0 2016-10-08 01:06:02 +02:00
Nikita Popov b061fa909d Fix bug #73192 2016-10-08 01:04:22 +02:00
Nikita Popov bc3a0b82b8 Revert "Fixed test"
This reverts commit a10d03ac16.
2016-10-08 00:43:36 +02:00
Nikita Popov 1c468ee044 Revert "Added validation to parse_url() to prohibit restricted characters inside login/pass components based on RFC3986"
This reverts commit 085dfca02b.
2016-10-08 00:43:17 +02:00
Christoph M. Becker 14d4ee93a8 Implement #65038: IMAGETYPE_WEBP constant missing
We add WebP support for getimagesize(), getimagesizefromstring)(),
image_type_to_extension() and image_type_to_mime_type(). For now we
care only about the simple lossy WebP format (VP8) and ignore the
lossless (VP8L) and extended (VP8X) formats. We use image/webp as MIME
type as it appears to be pretty common, even though it is not yet
registered with IANA.

Relevant specifications:
 * <https://developers.google.com/speed/webp/docs/riff_container>
 * <https://tools.ietf.org/html/rfc6386>
2016-10-08 00:02:21 +02:00
Derick Rethans 61bf62a7c0 Merge branch 'microseconds-modify' into PHP-7.1 2016-10-07 13:49:00 -04:00
Derick Rethans e3271b1814 Fixed bug #64887 (Allow DateTime modification with subsecond items). 2016-10-07 13:40:06 -04:00
Christoph M. Becker e2da66d361 Merge branch 'PHP-7.0' into PHP-7.1 2016-10-07 16:36:13 +02:00
Christoph M. Becker 825e0fd430 Document that ext/shmop deals with resources as of PHP 7.0.0
Second attempt
2016-10-07 16:35:37 +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
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 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
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
Davey Shafik 50059639c8 Fix NEWS after re-roll of RC3 2016-10-05 13:07:47 -07: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 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 31c32455d4 Merge branch 'pull-request/2155' into PHP-7.1 2016-10-05 13:07: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 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 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 5b52d5acde Fix #73207: Array ordering is same between 5.6.21 and 7.1.0 RC3 2016-10-03 18:55:39 +02:00
Bob Weinand 8fcc938e56 Merge branch 'PHP-7.0' into PHP-7.1 2016-10-03 12:55:23 +02:00
Bob Weinand 8908df690f Fix crash on Linux due to double fclose() 2016-10-03 12:55:06 +02:00
Stanislav Malyshev ef801b9bf9 Fix bug #73208 - another missing length check 2016-10-03 00:12:14 -07:00
Stanislav Malyshev 40e7baab3c Fix bug #73190: memcpy negative parameter _bc_new_num_ex 2016-10-03 00:09:02 -07:00
Bob Weinand f58cf8b24d Merge branch 'PHP-7.0' into PHP-7.1 2016-10-02 12:46:22 +01:00
Bob Weinand 417a8ef6b4 Fix run command args passing when inmidst execution 2016-10-02 12:45:20 +01:00
Bob Weinand 3fe1010cee Merge branch 'PHP-7.0' into PHP-7.1 2016-10-01 19:14:26 +01:00
Bob Weinand 9d537951c5 Add proper escape sequences and reading stdin from file in phpdbg run command 2016-10-01 19:05:19 +01:00
Nikita Popov 5f69c929ea Merge branch 'PHP-7.0' into PHP-7.1 2016-10-01 19:06:05 +02:00
Nikita Popov 633b93817e Merge branch 'PHP-5.6' into PHP-7.0 2016-10-01 19:05:48 +02:00
Nikita Popov f9d4b1a3f1 Fix leak in zend_exception_error
Only occurs if a non-fatal severity level is used, e.g. when using
interactive mode.
2016-10-01 19:04:31 +02:00
Bob Weinand a5129bcb5b Merge branch 'PHP-7.0' into PHP-7.1 2016-10-01 10:47:31 +01:00
Bob Weinand 3280a29ee5 Fix invalid access to interned strings after they are freed in phpdbg 2016-10-01 10:46:21 +01:00
Christoph M. Becker f6da70863f Merge branch 'PHP-7.0' into PHP-7.1 2016-10-01 00:00:46 +02:00
Christoph M. Becker 12967bc346 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-30 23:54:18 +02:00
Christoph M. Becker 9acfb1a3a5 Fix #73213: Integer overflow in imageline() with antialiasing
We port the respective fixes <https://github.com/libgd/libgd/commit/eca37d620>
and <https://github.com/libgd/libgd/commit/837b7327> to our bundled libgd.
2016-09-30 23:38:13 +02:00
Nikita Popov 02ba9d71ab Unwrap reference returns in cufa etc 2016-09-30 22:10:01 +02:00
Derick Rethans e63443d825 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-30 20:50:00 +01:00
Derick Rethans 6ad288ee23 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-30 20:49:53 +01:00
Derick Rethans c0219b323e Fixed tests due to changes in underlaying data 2016-09-30 20:49:44 +01:00
Derick Rethans 99b58896dc Merge branch 'PHP-7.0' into PHP-7.1 2016-09-30 20:31:16 +01:00
Derick Rethans 7deb32abc9 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-30 20:31:05 +01:00
Derick Rethans 91fd4bf000 Fixed parsing of AM/PM without all the expected dots in place 2016-09-30 20:21:48 +01:00
Christoph M. Becker 6656d32eb3 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-30 11:49:51 +02:00
Christoph M. Becker dd93712911 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-30 11:40:55 +02:00
Christoph M. Becker e72165bb86 Fix #73203: passing additional_parameters causes mail to fail
We make sure that there's no unsigned underflow, which happened for `y==0`.
2016-09-30 11:38:09 +02:00
Xinchen Hui 68da84875e Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:/php-src:
  fix user filter bug
2016-09-30 16:01:19 +08:00
Xinchen Hui b28277db94 Cleanup exception handling after zend_fetch_class_by_name 2016-09-30 16:00:14 +08:00
Joe Watkins e60620b974 Merge branch 'PHP-7.0' of https://github.com/php/php-src into PHP-7.0 2016-09-30 07:22:50 +01:00
Joe Watkins 98705148f0 fix user filter bug 2016-09-30 07:22:15 +01:00
Joe Watkins a8d031fbd8 fix user filter bug 2016-09-30 07:21:01 +01:00
Xinchen Hui f211614ba7 Use smart branch 2016-09-30 13:19:11 +08:00
Dmitry Stogov c218c4f01e Special handling for $php_errormsg and $http_response_header. 2016-09-30 02:41:08 +03:00
Christoph M. Becker 0edb16e768 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-29 14:41:12 +02:00
Christoph M. Becker 81cbbb68af Merge branch 'pull-request/2128' into PHP-7.0 2016-09-29 14:39:39 +02:00
Anatol Belski 3828323290 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  sync win32 makefile with makedist zendparse exports
2016-09-29 13:02:03 +02:00
Anatol Belski 62bed405da sync win32 makefile with makedist zendparse exports
With a newer bison this part is relevant. Whil bison 2.4.1 is still
used, this changes cater for the forward compatibility.
2016-09-29 12:56:49 +02:00
Dmitry Stogov 53c0a04185 zval_dtor_func_for_ptr() -> zval_dtor_func() 2016-09-29 10:59:54 +03:00
Dmitry Stogov 8863ca76e6 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Better fix for bug #72854 (avoid extra copy and creating reference to stack variable)
2016-09-29 10:57:09 +03:00
Dmitry Stogov e7f4355d9b Better fix for bug #72854 (avoid extra copy and creating reference to stack variable) 2016-09-29 10:56:01 +03:00
Stanislav Malyshev da7e89cde8 Fix bug #73189 - Memcpy negative size parameter php_resolve_path 2016-09-28 23:30:48 -07:00
Stanislav Malyshev 29e2a204fb Fixed bug #73174 - heap overflow in php_pcre_replace_impl 2016-09-28 22:29:59 -07:00
Ferenc Kovacs 36d5bed262 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-29 00:59:50 +02:00
Ferenc Kovacs 581e890483 Merge branch 'PHP-5.6' into PHP-7.0
Conflicts:
	configure.in
	main/php_version.h
2016-09-29 00:58:02 +02:00
Ferenc Kovacs 703c247c7d 5.6.28 is next 2016-09-29 00:55:36 +02:00
Derick Rethans 1350c6431a Updated to version 2016.7 (2016g) 2016-09-28 23:30:28 +01:00
Derick Rethans 9422de24d2 Empty merge 2016-09-28 23:30:28 +01:00
Derick Rethans 83780a6cd2 Updated to version 2016.7 (2016g) 2016-09-28 23:30:27 +01:00
Derick Rethans 03ac064b2e Empty merge 2016-09-28 23:30:27 +01:00
Derick Rethans 6a544f2d1e Updated to version 2016.7 (2016g) 2016-09-28 23:30:26 +01:00
Nikita Popov 56a7646ab2 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-28 23:22:48 +02:00
Nikita Popov e520b9e127 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-28 23:22:11 +02:00
Nikita Popov 1f5412982c Handle resource keys in constexpr arrays 2016-09-28 23:11:02 +02:00
Nikita Popov 40b8105cca Fix the constant array case as well 2016-09-28 23:05:21 +02:00
Nikita Popov 97066792b7 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-28 22:38:47 +02:00
Nikita Popov 437942d972 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-28 22:36:58 +02:00
Nikita Popov 99bf19c177 Check next_index_insert failure in ADD_ARRAY_ELEMENT 2016-09-28 22:35:27 +02:00
Davey Shafik a61bc294db Prepare to Re-roll 7.1.0RC3 2016-09-28 13:02:02 -07:00
Nikita Popov 19f1ff5ad0 Combine code for keyed/unkeyed list() 2016-09-28 21:43:48 +02:00
Nikita Popov 6f9e5684a1 Fix segfault when empty entry in keyed array assignment 2016-09-28 21:43:48 +02:00
Anatol Belski 22a3d55e9a fix exports which are now referenced by phpdbg
(cherry picked from commit cd0f1c8a5e)
2016-09-28 21:29:53 +02:00
Davey Shafik 94f7e4a5f4 Update UPGRADING to reflect new reality 2016-09-28 11:24:43 -07:00
Davey Shafik a8c3174d51 Update NEWS for 7.1.0RC4 2016-09-28 18:07:19 +00:00
Davey Shafik bc4e09f497 Update NEWS 2016-09-28 10:31:22 -07:00
Nikita Popov f70fb05138 Don't mark ReflectionType::__toString() as deprecated for now 2016-09-28 19:21:53 +02:00
Nikita Popov bf907b9961 Revert ReflectionType::__toString() behavior + deprecate 2016-09-28 19:21:51 +02:00
Nikita Popov 4c0804c07d Ensure symtable exists before checking it 2016-09-28 19:20:17 +02:00
Bob Weinand e5d75d7268 Add phpdbg generator command 2016-09-28 13:26:08 +02:00
Nikita Popov 21f0be4792 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-27 19:48:50 +02:00
Nikita Popov b7cbaa7f43 Fix bug #73181 2016-09-27 19:47:48 +02:00
Anatol Belski 8a6b089408 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  prepare next
2016-09-27 12:51:24 +02:00
Anatol Belski cb29c01ed6 prepare next 2016-09-27 12:49:52 +02:00
Anatol Belski fcc232173e set versions 2016-09-27 12:38:38 +02:00
Adam Baratz 228be4c39d update NEWS 2016-09-26 17:13:50 -04:00
Adam Baratz 3d321a4aa4 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS
  Ignore potentially misleading dberr values
2016-09-26 17:13:14 -04:00
Adam Baratz 6887c4a061 update NEWS 2016-09-26 17:09:11 -04:00
Chris Kings-Lynne 48b5a1f9b9 Ignore potentially misleading dberr values
FreeTDS had a buggy behavior where it would pass invalid values:
https://sourceforge.net/p/freetds/bugs/59/

The fix for this issue -- bc22b2ef817fb5d102bd758111ff3634b39a1319 on their
repo -- was to always use SYBESMSG for dberr. This makes it so the existing
pdo_dblib code would work as is. But by ignoring the dberr value in this
function, it will behave correctly, even with older versions of FreeTDS.
2016-09-26 17:07:46 -04:00
Anatol Belski b4e90e9591 update NEWS 2016-09-26 19:55:43 +02:00
Anatol Belski f324e5e628 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS
2016-09-26 19:55:05 +02:00
Anatol Belski 3a058e3817 update NEWS 2016-09-26 19:54:10 +02:00
Anatol Belski 5e4a93b28e Merge branch 'PHP-7.1' of git.php.net:php-src into PHP-7.1 2016-09-26 18:55:08 +02:00
Anatol Belski f36babf643 Merge branch 'PHP-7.0' of git.php.net:php-src into PHP-7.0 2016-09-26 18:54:43 +02:00
Anatol Belski 4e3746380a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73172 parse error: Invalid numeric literal
2016-09-26 18:49:40 +02:00
Anatol Belski 39e5991705 Fixed bug #73172 parse error: Invalid numeric literal 2016-09-26 18:47:30 +02:00
Christoph M. Becker b3f4bc7592 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-26 18:45:05 +02:00
Christoph M. Becker 5e102d5685 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-26 18:43:03 +02:00
Christoph M. Becker 4f0960a800 Fix #53745: cgi.discard_path option is missing from php.ini
Also cgi.check_shebang_line has been missing.
2016-09-26 18:41:09 +02:00
Anatol Belski 5e24fe9fde Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update libs_versions.txt
  update libs_versions.txt
2016-09-26 15:42:32 +02:00
Anatol Belski eaee65080e update libs_versions.txt 2016-09-26 15:41:41 +02:00
Anatol Belski 5dd3ea1567 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update libs_versions.txt
2016-09-26 15:41:16 +02:00
Anatol Belski 66baefec44 update libs_versions.txt 2016-09-26 15:39:01 +02:00
Dmitry Stogov 6be2e79c2c On PHP-7.1 and above we have to check CALL_INFO instead of symbol_table. 2016-09-26 16:16:07 +03:00
Dmitry Stogov bca7f02933 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73156 (segfault on undefined function)
2016-09-26 14:17:27 +03:00
Dmitry Stogov d279118422 Fixed bug #73156 (segfault on undefined function) 2016-09-26 14:14:57 +03:00
Stanislav Malyshev 1c0e9126fb Fix bug #73150: missing NULL check in dom_document_save_html 2016-09-25 21:25:01 -07:00
Stanislav Malyshev 0e6fe3a4c9 Fix bug #73147: Use After Free in PHP7 unserialize() 2016-09-25 19:53:59 -07:00
Stanislav Malyshev 1b29e4488e Fix bug #73091 - Unserializing DateInterval object may lead to __toString invocation 2016-09-25 16:43:24 -07:00
Stanislav Malyshev e1709b7e58 Fix bug #73082 2016-09-25 16:07:14 -07:00
Anatol Belski 2b8024bb04 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Add an include path for freetype which is relevant for cmake builds
2016-09-25 20:57:30 +02:00
Anatol Belski 4e7b5ca459 Add an include path for freetype which is relevant for cmake builds 2016-09-25 20:55:13 +02:00
Nikita Popov bd893061d6 Use SEND_USER for CONST|TMP as well
Otherwise we're missing the "expected to be a reference, value
given" warning that appears for ordinary calls to call_user_func().

Also update an UPGRADING note with recent changes wrt
call_user_func().
2016-09-25 12:39:23 +02:00
Christoph M. Becker daba342f57 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-25 10:49:43 +02:00
Christoph M. Becker fa9d41f66c Merge branch 'PHP-5.6' into PHP-7.0 2016-09-25 10:46:44 +02:00
Christoph M. Becker c696bc8cfa Fix test_image_equals_file() wrt. palette images
The recently introduced test_image_equals_file() doesn't properly work for
palette images, because in this case only the palette indexes are compared,
what can lead to false positives and negatives as shown in the added test.

To fix that we convert palette images to truecolor, what is supposed to be
faster than calling imagecolorsforindex() for each pixel.

We furthermore rely on PHP's refcounting to free unused images; after all,
this is not C.
2016-09-25 10:34:03 +02:00
Nikita Popov c7651c2396 Fix a couple of ASSIGN_DIM/OBJ inference bugs
Account for possible null return values better.
2016-09-24 22:43:27 +02:00
Nikita Popov db801763e4 Add range inference for ZEND_STRLEN
On 32-bit systems we conservatively allow negative lengths.
On 64-bit systems, the range could additionally be restricted to
the canonical 48-bit size.
2016-09-24 22:43:27 +02:00
Christoph M. Becker 75a1384ebf Merge branch 'PHP-7.0' into PHP-7.1 2016-09-24 18:18:34 +02:00
Christoph M. Becker bc22582cf7 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-24 18:05:21 +02:00
Christoph M. Becker c596b02a5b Merge branch 'pull-request/2120' into PHP-5.6 2016-09-24 17:52:15 +02:00
Nikita Popov 453102b4a0 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-24 13:22:00 +02:00
Nikita Popov 8831a12da1 Fixed bug #73163 2016-09-24 13:18:43 +02:00
Christoph M. Becker c733f92d72 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-24 12:47:07 +02:00
Christoph M. Becker 5c81298597 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-24 12:41:48 +02:00
Christoph M. Becker 8f5eda4bf6 Fix #73161: imagecreatefromgd2() may leak memory 2016-09-24 12:36:54 +02:00
Christoph M. Becker 394e9b3d15 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-24 11:37:23 +02:00
Christoph M. Becker 61722743f4 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-24 11:31:54 +02:00
Christoph M. Becker 709731797c Fix #73159: imagegd2(): unrecognized formats may result in corrupted files
We must not apply the format correction twice for truecolor images.
2016-09-24 11:28:20 +02:00
Christoph M. Becker bc9efac0fe Merge branch 'PHP-7.0' into PHP-7.1 2016-09-24 10:58:39 +02:00
Christoph M. Becker 0a4b72fa94 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-24 10:48:24 +02:00
Christoph M. Becker c7936ead8f Fix #73155: imagegd2() writes wrong chunk sizes on boundaries 2016-09-24 10:33:49 +02:00
Christoph M. Becker 20ebc108dc Merge branch 'PHP-7.0' into PHP-7.1 2016-09-24 00:37:37 +02:00
Christoph M. Becker 7028ba1d32 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-24 00:36:53 +02:00
Christoph M. Becker 1da79a6c6e Fix #73157 (again): imagegd2() ignores 3rd param if 4 are given
Obviously, there was a bad merge.
2016-09-24 00:35:24 +02:00
Christoph M. Becker bf66af1d60 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-24 00:07:50 +02:00
Adam Baratz 20f04b89a3 update NEWS 2016-09-23 17:53:24 -04:00
Christoph M. Becker 456be3ec37 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-23 23:46:22 +02:00
Christoph M. Becker c240978067 Fix #73157: imagegd2() ignores 3rd param if 4 are given
We must initialize `q` for *more* than three parameters, too.
2016-09-23 23:42:34 +02:00
Anatol Belski 90a3671c09 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Revert "Fixed bug #73037 SoapServer reports Bad Request when gzipped"
2016-09-23 18:48:14 +02:00
Anatol Belski 4685297f05 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Revert "Fixed bug #73037 SoapServer reports Bad Request when gzipped"
2016-09-23 18:46:51 +02:00
Anatol Belski 075aa911ff Revert "Fixed bug #73037 SoapServer reports Bad Request when gzipped"
This reverts commit f9a699f6c3.
2016-09-23 18:45:03 +02:00
Anatol Belski 44b7ec35ba Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  skip this test for now as it seems to have issues running dev server
  Fixed bug #73037 SoapServer reports Bad Request when gzipped
2016-09-23 18:10:55 +02:00
Anatol Belski f9936000da Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  skip this test for now as it seems to have issues running dev server
  Fixed bug #73037 SoapServer reports Bad Request when gzipped
2016-09-23 18:10:07 +02:00
Anatol Belski 28887fe41b skip this test for now as it seems to have issues running dev server 2016-09-23 18:07:08 +02:00
Anatol Belski f9a699f6c3 Fixed bug #73037 SoapServer reports Bad Request when gzipped
(cherry picked from commit 410c68788a)
2016-09-23 18:06:12 +02:00
Christoph M. Becker f0a1188695 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-23 16:27:23 +02:00
Christoph M. Becker be4489d488 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-23 16:26:05 +02:00
Christoph M. Becker 9a2a45c1df Update NEWS 2016-09-23 16:23:58 +02:00
Anatol Belski 4b13f60278 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73037 SoapServer reports Bad Request when gzipped
2016-09-23 16:07:12 +02:00
Anatol Belski 410c68788a Fixed bug #73037 SoapServer reports Bad Request when gzipped 2016-09-23 16:02:50 +02:00
Christoph M. Becker bf35b31f56 Fix FreeType tests using UTF-8 font file names
UTF-8 font file names are not yet supported on Windows[1], so we're skipping
the respective tests on this platform, but enable them on other platforms.

[1] <http://news.php.net/php.internals.win/1142>
2016-09-23 15:49:21 +02:00
Julien Pauli 974ba6be7a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Formatting. Fix possible memory corruption in FPM SHM management
  fix every work call mmap

Conflicts:
	sapi/fpm/fpm/fpm_scoreboard.c
2016-09-23 13:54:22 +02:00
Julien Pauli fbf87a8082 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Formatting. Fix possible memory corruption in FPM SHM management
  fix every work call mmap
2016-09-23 13:53:22 +02:00
Julien Pauli a22175b06f Formatting. Fix possible memory corruption in FPM SHM management 2016-09-23 13:52:58 +02:00
tom916 807004a446 fix every work call mmap
fix fpm_scoreboard_free
2016-09-23 13:52:58 +02:00
Christoph M. Becker 8dfee1a777 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-23 12:57:10 +02:00
Christoph M. Becker deda058751 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-23 12:29:37 +02:00
Christoph M. Becker 726c5999eb Rework FreeType related tests
Firstly, there is no fundamental difference between running the tests on
freetype before and after 2.4.10, so we re-join the respective test cases.

Secondly, there are some minor differences in the results depending on
architecture, freetype versions and config options, so we cater to that
by allowing small deviations from the expectations.
2016-09-23 12:00:41 +02:00
Anatol Belski 681d3148cd update NEWS 2016-09-23 11:26:03 +02:00
Anatol Belski 8f256bebef Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS
  phpdbg next command must stop when leaving function
2016-09-23 11:25:33 +02:00
Anatol Belski 9ee913a773 update NEWS 2016-09-23 11:24:55 +02:00
Bob Weinand cf35dae6e2 phpdbg next command must stop when leaving function 2016-09-23 03:29:37 +02:00
Anatol Belski f7e5481a10 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix bug #73121 Bundled PCRE doesn't compile because JIT isn't supported on s390
2016-09-23 01:55:17 +02:00
Anatol Belski 54d8053ac5 Fix bug #73121 Bundled PCRE doesn't compile because JIT isn't supported on s390 2016-09-23 01:52:42 +02:00
Anatol Belski 5b46c2b67d Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update libs versions
  update libs versions
2016-09-22 17:03:49 +02:00
Anatol Belski a95caa29bf Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update libs versions
2016-09-22 17:03:12 +02:00
Anatol Belski 11ff616d0f update libs versions 2016-09-22 17:02:54 +02:00
Anatol Belski 49c3fa43ad update libs versions 2016-09-22 17:01:02 +02:00
Nikita Popov 2205fadac5 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-22 12:50:29 +02:00
Nikita Popov c38f88ddb0 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-22 12:48:38 +02:00
Márcio Almada 4397306b32 fix bug related to #865
In case USE_KEY flag is active, RegexIterator->accept() should keep it's
old behavior which is to accept keys mapping arrays.

This broke after PHP 5.5 but was not noticed due to lack of tests for USE_KEY.
2016-09-22 12:46:19 +02:00
Nikita Popov 781d92c806 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-22 12:38:48 +02:00
John Boehr 68e602ff0a Fix bug #69579 2016-09-22 12:38:07 +02:00
Nikita Popov 7cd2494bb8 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-22 12:34:55 +02:00
John Boehr 8e313becf4 Fix bug #69579 2016-09-22 12:32:37 +02:00
Anatol Belski d4144a6ec9 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS
2016-09-22 12:07:37 +02:00
Anatol Belski 220b88c541 update NEWS 2016-09-22 12:06:25 +02:00
Anatol Belski adaf68c3b1 update NEWS 2016-09-22 12:04:37 +02:00
Anatol Belski b370c2b87a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #73126 Cannot pass parameter 1 by reference
2016-09-22 11:51:39 +02:00
Anatol Belski 579c8669c8 Fixed bug #73126 Cannot pass parameter 1 by reference 2016-09-22 11:49:35 +02:00
Adam Baratz e14636f4bd Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Limit size of result set for test query
2016-09-21 16:23:58 -04:00
Adam Baratz d334d319f0 Limit size of result set for test query
This result set can be very large, depending on the database. This change
ensures this test won't be slow.
2016-09-21 16:21:33 -04:00
Adam Baratz 5ab064caed Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS
  PHP bug 67130: nextRowset should work with unfetched rows
2016-09-21 15:15:18 -04:00
Adam Baratz 4b9810b9bb update NEWS 2016-09-21 14:29:42 -04:00
Peter LeBrun dfd6baee0c PHP bug 67130: nextRowset should work with unfetched rows 2016-09-21 14:27:23 -04:00
Adam Baratz 7726151aa8 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Move dtor before memory freed to avoid invalid read
2016-09-21 12:02:17 -04:00
Adam Baratz b29ad29b91 Move dtor before memory freed to avoid invalid read 2016-09-21 12:00:19 -04:00
Xinchen Hui 6617e87700 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed skip
2016-09-21 17:20:35 +08:00
Xinchen Hui 56e3ec93a9 Fixed skip 2016-09-21 17:20:02 +08:00
Stanislav Malyshev 33a8af0510 Fix bug #73073 - CachingIterator null dereference when convert to string 2016-09-20 22:59:12 -07:00
Christoph M. Becker 7e21cb0c99 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-20 12:18:13 +02:00
Christoph M. Becker eeb9113b6c Skip failing FreeType tests for now 2016-09-20 12:16:16 +02:00
Dmitry Stogov 64a8048c53 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed inconsistent meaning of zend_startup_module_ex() return value used in zend_hash_apply()
2016-09-20 12:34:58 +03:00
Dmitry Stogov 3c16384ea2 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed inconsistent meaning of zend_startup_module_ex() return value used in zend_hash_apply()
2016-09-20 12:34:40 +03:00
Dmitry Stogov 4dd70b6e2f Fixed inconsistent meaning of zend_startup_module_ex() return value used in zend_hash_apply() 2016-09-20 12:29:57 +03:00
Christoph M. Becker 474428943f Merge branch 'PHP-7.0' into PHP-7.1 2016-09-20 01:32:32 +02:00
Christoph M. Becker ba2d9e1ff1 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-20 01:25:08 +02:00
Christoph M. Becker fc2cadca2d Merge branch 'pull-request/1845' into PHP-5.6 2016-09-20 01:05:57 +02:00
George Wang 248ef30abe Merge branch 'PHP-7.0' into PHP-7.1 2016-09-19 10:50:21 -04:00
George Wang ca24c58e65 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-19 10:49:26 -04:00
George Wang 56fa36b0a8 Fix wrong year in previous commit. 2016-09-19 10:46:46 -04:00
Julien Pauli 7c7dc62c11 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Do not wrap user exception in case of custom JSON serialization

Conflicts:
	ext/json/json_encoder.c
2016-09-19 16:42:53 +02:00
Julien Pauli c4f3ea10e4 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Do not wrap user exception in case of custom JSON serialization

Conflicts:
	ext/json/json.c
2016-09-19 16:11:17 +02:00
Julien Pauli 1ed4b13fb6 Do not wrap user exception in case of custom JSON serialization 2016-09-19 16:06:12 +02:00
Julien Pauli d8d4091357 Updated NEWS 2016-09-19 15:20:22 +02:00
Julien Pauli b41abf7496 Fix 73113 - Segfault with throwing JsonSerializable 2016-09-19 15:16:14 +02:00
TAKEKOSHI Akishige 2efb131210 when needle is short, Sunday algorithm is slower than glibc memchr() 2016-09-18 16:35:09 +08:00
Nikita Popov 9e2df3b6b2 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-17 22:56:36 +02:00
Nikita Popov 01759c4346 Add test for bug #72489 2016-09-17 22:54:25 +02:00
Nikita Popov 896814e139 Make zval_ptr_dtor / _zval_dtor_func more robust
In particular, allow arrays with refcount>1, like we already allow
for all other types. _zval_dtor_func is now the same as
_zval_dtor_func_for_ptr with an extra refcount decrement check at
the start. At this point we might as well drop it...

Cherry-pick of ded69ee6e6 from
PHP-7.1.
2016-09-17 22:33:41 +02:00
Christoph M. Becker eac277ed83 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-16 23:50:00 +02:00
Christoph M. Becker 48cf8dd9c3 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-16 23:43:18 +02:00
Christoph M. Becker 6682673070 Fix #73100: session_destroy null dereference in ps_files_path_create 2016-09-16 23:41:10 +02:00
Nikita Popov cab7bc7e07 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-16 21:06:11 +02:00
Michael Orlitzky 0e76cafaf1 Disable add/sub asm for gcc 4.9 pic/pie builds 2016-09-16 21:06:02 +02:00
Xinchen Hui 12755437cb Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Updte NEWS
  Fixed bug #72505 (readfile() mangles files larger than 2G)
2016-09-16 20:56:29 +08:00
Xinchen Hui 0ad82e41f2 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Updte NEWS
  Fixed bug #72505 (readfile() mangles files larger than 2G)
2016-09-16 20:55:54 +08:00
Xinchen Hui 01c7c6b152 Updte NEWS 2016-09-16 20:55:37 +08:00
Xinchen Hui ac07008bb7 Fixed bug #72505 (readfile() mangles files larger than 2G) 2016-09-16 20:53:51 +08:00
Dmitry Stogov 846441ab4b Prevent optimization of huge functions. 2016-09-16 14:03:05 +03:00
Christoph M. Becker a8a123e36c Merge branch 'PHP-7.0' into PHP-7.1 2016-09-16 11:48:53 +02:00
Christoph M. Becker c18263e0e0 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-16 11:41:42 +02:00
Christoph M. Becker 46df064261 Fix #73003: Integer Overflow in gdImageWebpCtx of gd_webp.c
We add the missing integer overflow check to avoid potential buffer overflows.
2016-09-16 11:37:18 +02:00
Remi Collet db795d4c02 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix test (32bits)
2016-09-15 15:36:39 +02:00
Remi Collet d2d77c028d Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix test (32bits)
2016-09-15 15:36:26 +02:00
Remi Collet 3c117d4136 fix test (32bits) 2016-09-15 15:32:39 +02:00
Remi Collet f5abe9ff57 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  fix ZTS build
2016-09-15 13:29:44 +02:00
Remi Collet 19e04784ac Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix ZTS build
2016-09-15 13:29:26 +02:00
Remi Collet 55237fe153 fix ZTS build 2016-09-15 13:27:20 +02:00
Christoph M. Becker 44968927d7 Add CURLE_SSL_PINNEDPUBKEYNOTMATCH
This error constant is returned on key mismatch when CURLOPT_PINNEDPUBLICKEY
is used. As the option had been introduced in PHP 7.0.7, it makes sense to
also add the related error constant to PHP 7.0+.

Cf. <https://curl.haxx.se/libcurl/c/CURLOPT_PINNEDPUBLICKEY.html>.
2016-09-15 12:20:19 +02:00
Ferenc Kovacs 4b9ec20b0e Merge branch 'PHP-7.0' into PHP-7.1 2016-09-15 11:38:49 +02:00
Ferenc Kovacs 30b7f72300 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-15 11:37:30 +02:00
Ferenc Kovacs 1d7484077a update NEWS 2016-09-15 11:35:46 +02:00
Christoph M. Becker 41001f8bb5 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-15 00:55:41 +02:00
Christoph M. Becker cf9e2fbbf6 Merge branch 'PHP-5.6' into PHP-7.0 2016-09-15 00:50:49 +02:00
Christoph M. Becker 7bfb7b62b1 Fix and reactivate regression test for bug #50194
Apparently, different FreeType versions render the string differently, so
we have to cater to these slight differences. Unfortunately, the testing
framework doesn't yet offer a clean API for this, so we work around the
limitations by parsing and checking the output of test_image_equals_file().
2016-09-15 00:46:00 +02:00
Adam Baratz b424d9f270 Mark change with relevant bug number 2016-09-14 17:44:56 -04:00
Christoph M. Becker 1c8c61f142 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-14 20:03:00 +02:00
Christoph M. Becker 7a923c3afe Merge branch 'PHP-5.6' into PHP-7.0 2016-09-14 20:02:05 +02:00
Christoph M. Becker 36df4f8419 Skip ext/gd/tests/bug50194.phpt for now
There are apparently issues with the font rendering with different freetype
version; I'll have a look at this issue ASAP.
2016-09-14 20:00:30 +02:00
Adam Baratz 744d1b3c76 Add pdo_dblib changes 2016-09-14 11:19:31 -04:00
Adam Baratz 2f99f702b7 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Skip test for early TDS versions
2016-09-14 11:07:26 -04:00
Adam Baratz f559fb7556 Skip test for early TDS versions 2016-09-14 11:06:54 -04:00
Christoph M. Becker b1a65452a1 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-14 16:01:02 +02:00
Christoph M. Becker bc27ce98ee Merge branch 'PHP-5.6' into PHP-7.0 2016-09-14 15:50:09 +02:00
Christoph M. Becker 09eb6ed35e Fix #50194: imagettftext broken on transparent background w/o alphablending
We must not draw the background pixels of the character glyphs, what has
already been fixed in GD 2.0.26.
2016-09-14 15:47:32 +02:00
Davey Shafik ad8e7747bf Update NEWS for 7.1.0RC3 2016-09-14 12:26:18 +00:00
Christoph M. Becker 5880428dac Fix potential memory issue with USE_ZEND_ALLOC=0
The PHP core and extensions are written with the assumption that memory
allocation either succeeds, or the allocator bails out (i.e. the allocator
is infallible). Therefore the result of emalloc() and friends are not checked
for NULL values.

However, with USE_ZEND_ALLOC=0, malloc() and friends are used as allocators,
but these are fallible, i.e. they return NULL instead of bailing out if they
fail. This easily leads to invalid memory accesses in the following, such as
in <https://bugs.php.net/73032>. Some of these cases may constitute
exploitable vulnerabilities.

Therefore we make the infallible __zend_alloc() and friends the default for
USE_ZEND_ALLOC=0.
2016-09-07 22:50:53 +02:00
SATO Kentaro df683fa3b0 Fix #68447: grapheme_extract take an extra trailing character
grapheme_extract() converts UTF-8 string in the argument to UTF-16 to
iterate through graphemes, and count each UTF-16 character as one Unicode
character, which is not correct for UTF-16 surrogate pairs.
The patch removes the conversion and counts UTF-8 directly if needed.
2016-07-01 22:45:37 +09:00
Mark Plomer f5f94d9c08 fix left-shifted/misaligned bounding-box + wrong kerning in imagettfbbox/imageftbbox
- load glyph with FT_LOAD_IGNORE_TRANSFORM for bbox as final bbox is rotated at once later (fixes "double-rotation" per glyph for calculating bbox)
- reload the rotated glyph for painting after that (only if angle != 0)
- rotate the original bbox at 0,0 and do not throw away xMin/yMin (drawing-rotation is also based at "origin" point - including the bearingX, see http://www.freetype.org/freetype2/docs/glyphs/glyphs-3.html#section-3) - this fixes the "left-shift"-problem also when angle = 0
- removed "xb/yb" and use "x/y" directly for offsetting brect (no need for adding "x1/y1" and substracting "yd" later)
- removed therefore unused "yd" helper var which seems tried to fix parts of the original problems
- initialize x/y with 0 instead of -1 in php_imagettftext_common() to make image*text() and image*bbox() results identical (there was a -1px shift in image*bbox() before)
- fixed gdroundupdown() for negative numbers (-256 / 64 gives -5 instead of -4 before)
- rotate kerning-delta by given angle (fixes completely wrong kerning and therefore wrong bounding box if angle != 0)
- changed 3 tests and added a new one to test for the new (better) coordinates
2016-04-03 12:11:26 +02:00
Paul Tarjan 9f25f736ed Dont ignore errors from FT_Get_Glyph 2016-04-03 12:11:25 +02:00
Joshua Thijssen e7f23e164b Implemented fix for incorrect filedescriptor closing 2015-10-21 13:21:03 +02:00
Christoph M. Becker c36ce04dd3 Fix #70103: ZipArchive::addGlob ignores remove_all_path option
When the remove_all_path option is set, but no add_path option, remove_all_path
is simply ignored. This patch fixes this.
2015-08-13 21:04:36 +02:00
Tom Sommer e37b5f20fb Fix rebase error 2015-07-14 13:18:47 -04:00
Tom Sommer 29f96ab37e Add subject to mail.log 2015-07-14 11:44:58 -04:00
Evgeniy Spinov 650e073f7a *[Sessions]: Now session is accessible if process is ran by root. Fixing bug: https://bugs.php.net/bug.php?id=69582
*[Sessions]: Replaced fstat with zend_fstat
2015-06-28 12:02:57 +04:00
EvgeniySpinov 2edf296a92 Merge pull request #1 from php/master
Merging upstream
2015-06-28 12:00:38 +04:00
Evgeniy Spinov a2c461d58a *[Sessions]: Now session is accessible if process is ran by root. Fixing bug: https://bugs.php.net/bug.php?id=69582 2015-06-24 15:26:25 +04:00
Willian Gustavo Veiga 33721742a5 Added "exclude_disabled" argument to "get_defined_functions". 2015-06-02 21:42:18 -03:00
Willian Gustavo Veiga 978832331a Fix bug #31875 - get_defined_functions() should not list disabled functions. 2015-05-30 12:29:27 -03:00
redfoxli 2ece3ea699 improperlog 2015-05-30 14:37:41 +08:00
Floris Bos bb19125781 Fix php-fpm.service.in
- Expand file paths.
- Remove obsolete After=syslog.target. Syslog is socket activated nowadays.

Signed-off-by: Floris Bos <bos@je-eigen-domein.nl>
2015-05-01 15:28:55 +02:00
1594 changed files with 72404 additions and 40136 deletions

No files matched your search

+57
View File
@@ -0,0 +1,57 @@
version: "{branch}.build.{build}"
image: Visual Studio 2015
branches:
except:
- PHP-5.6
- PHP-7.0
skip_commits:
files:
- NEWS
- UPGRADING*
- README.*
clone_depth: 64
cache:
- c:\build-cache
- c:\build-cache\sdk -> .appveyor.yml
environment:
PHP_BUILD_CACHE_BASE_DIR: c:\build-cache
PHP_BUILD_OBJ_DIR: c:\obj
PHP_BUILD_CACHE_SDK_DIR: c:\build-cache\sdk
PHP_BUILD_SDK_BRANCH: php-sdk-2.0.1
# ext and env setup for tests
#MYSQL_TEST_PASSWD: Password12!
#MYSQL_TEST_USER: root
#PDO_MYSQL_TEST_DSN: "pgsql:host=127.0.0.1 port=5432 dbname=test user=root password=Password12!"
#PDO_MYSQL_TEST_USER: root
#PDO_MYSQL_TEST_PASS: Password12!
#PGSQL_TEST_CONNSTR: "host=127.0.0.1 dbname=test port=5432 user=postgres password=Password12!"
#PDO_PGSQL_TEST_DSN: "pgsql:host=127.0.0.1 port=5432 dbname=test user=postgres password=Password12!"
#build permutations
matrix:
- THREAD_SAFE: 0
OPCACHE: 0
- THREAD_SAFE: 1
OPCACHE: 1
services:
# the setup scripts have to be touched, once some other db version is used
- mysql
- postgresql95
platform:
- x64
# - x86
build_script:
- appveyor\build.bat
test_script:
- appveyor\test.bat
+69 -98
View File
@@ -29,22 +29,33 @@ document ____executor_globals
end
define print_cvs
____executor_globals
set $p = $eg.current_execute_data.CVs
set $c = $eg.current_execute_data.op_array.last_var
set $v = $eg.current_execute_data.op_array.vars
set $i = 0
printf "Compiled variables count: %d\n", $c
while $i < $c
printf "%d = %s\n", $i, $v[$i].name
if $p[$i] != 0
printzv *$p[$i]
else
printf "*uninitialized*\n"
end
set $i = $i + 1
if $argc == 0
____executor_globals
set $cv_ex_ptr = $eg.current_execute_data
else
set $cv_ex_ptr = (zend_execute_data *)$arg0
end
set $cv_count = $cv_ex_ptr.func.op_array.last_var
set $cv = $cv_ex_ptr.func.op_array.vars
set $cv_idx = 0
set $callFrameSize = (sizeof(zend_execute_data) + sizeof(zval) - 1) / sizeof(zval)
printf "Compiled variables count: %d\n\n", $cv_count
while $cv_idx < $cv_count
printf "[%d] '%s'\n", $cv_idx, $cv[$cv_idx].val
set $zvalue = ((zval *) $cv_ex_ptr) + $callFrameSize + $cv_idx
printzv $zvalue
set $cv_idx = $cv_idx + 1
end
end
document print_cvs
Prints the compiled variables and their values.
If a zend_execute_data pointer is set this will print the compiled
variables of that scope. If no parameter is used it will use
current_execute_data for scope.
usage: print_cvs [zend_execute_data *]
end
define dump_bt
@@ -196,12 +207,17 @@ define ____printzv_contents
____executor_globals
set $handle = $zvalue->value.obj.handle
set $handlers = $zvalue->value.obj.handlers
set $zobj = $zvalue->value.obj
set $cname = $zobj->ce->name->val
set $zobj = $zvalue->value.obj
set $cname = $zobj->ce->name->val
printf "(%s) #%d", $cname, $handle
if ! $arg1
if $handlers->get_properties == &zend_std_get_properties
set $ht = $zobj->properties
if $zobj->properties
set $ht = $zobj->properties
else
set $ht = &$zobj->ce->properties_info
end
printf "\nProperties "
if $ht
set $ind = $ind + 1
____print_ht $ht 1
@@ -212,7 +228,7 @@ define ____printzv_contents
set $i = $i - 1
end
else
echo "no properties found"
echo "not found"
end
end
end
@@ -455,9 +471,9 @@ define print_inh
end
define print_pi
set $pi = $arg0
set $pi = (zend_property_info *)$arg0
printf "[%p] {\n", $pi
printf " h = %lu\n", $pi->h
printf " ce = [%p] %s\n", $pi->ce, $pi->ce->name->val
printf " flags = %d (", $pi->flags
if $pi->flags & 0x100
printf "ZEND_ACC_PUBLIC"
@@ -476,16 +492,27 @@ define print_pi
end
printf ")\n"
printf " name = "
____print_str $pi->name $pi->name_length
printf "\n}\n"
print_zstr $pi->name
printf "}\n"
end
document print_pi
Takes a pointer to an object's property and prints the property information
usage: print_pi <ptr>
end
define ____print_str
set $tmp = 0
set $str = $arg0
if $argc > 2
set $maxlen = $arg2
else
set $maxlen = 256
end
printf "\""
while $tmp < $arg1 && $tmp < 256
if $str[$tmp] > 32 && $str[$tmp] < 127
while $tmp < $arg1 && $tmp < $maxlen
if $str[$tmp] > 31 && $str[$tmp] < 127
printf "%c", $str[$tmp]
else
printf "\\%o", $str[$tmp]
@@ -554,6 +581,23 @@ document printzops
dump operands of the current opline
end
define print_zstr
set $zstr = (zend_string *)$arg0
if $argc == 2
set $maxlen = $arg1
else
set $maxlen = $zstr->len
end
printf "string(%d) ", $zstr->len
____print_str $zstr->val $zstr->len $maxlen
printf "\n"
end
document print_zstr
print the length and contents of a zend string
usage: print_zstr <ptr> [max length]
end
define zbacktrace
____executor_globals
dump_bt $eg.current_execute_data
@@ -566,79 +610,6 @@ document zbacktrace
> (gdb) dump_bt $eg.current_execute_data
end
define zmemcheck
set $p = alloc_globals.head
set $stat = "?"
set $total_size = 0
if $arg0 != 0
set $not_found = 1
else
set $not_found = 0
end
printf " block size status file:line\n"
printf "-------------------------------------------------------------------------------\n"
while $p
set $aptr = $p + sizeof(struct _zend_mem_header) + sizeof(align_test)
if $arg0 == 0 || (void *)$aptr == (void *)$arg0
if $p->magic == 0x7312f8dc
set $stat = "OK"
end
if $p->magic == 0x99954317
set $stat = "FREED"
end
if $p->magic == 0xfb8277dc
set $stat = "CACHED"
end
set $filename = strrchr($p->filename->val, '/')
if !$filename
set $filename = $p->filename->val
else
set $filename = $filename + 1
end
printf " %p ", $aptr
if $p->size == sizeof(struct _zval_struct) && ((struct _zval_struct *)$aptr)->type >= 0 && ((struct _zval_struct *)$aptr)->type < 10
printf "ZVAL?(%-2d) ", $p->size
else
printf "%-9d ", $p->size
end
set $total_size = $total_size + $p->size
printf "%-06s %s:%d", $stat, $filename, $p->lineno
if $p->orig_filename
set $orig_filename = strrchr($p->orig_filename, '/')
if !$orig_filename
set $orig_filename = $p->orig_filename
else
set $orig_filename = $orig_filename + 1
end
printf " <= %s:%d\n", $orig_filename, $p->orig_lineno
else
printf "\n"
end
if $arg0 != 0
set $p = 0
set $not_found = 0
else
set $p = $p->pNext
end
else
set $p = $p->pNext
end
end
if $not_found
printf "no such block that begins at %p.\n", $aptr
end
if $arg0 == 0
printf "-------------------------------------------------------------------------------\n"
printf " total: %d bytes\n", $total_size
end
end
document zmemcheck
show status of a memory block.
usage: zmemcheck [ptr].
if ptr is 0, all blocks will be listed.
end
define lookup_root
set $found = 0
if gc_globals->roots
+1 -1
View File
@@ -286,7 +286,7 @@ MAINTENANCE: Odd fixes
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: gd
PRIMARY MAINTAINER: Pierre-Alain Joye <pajoye@php.net>
PRIMARY MAINTAINER: Pierre-Alain Joye <pajoye@php.net>, Christoph M. Becker <cmb@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
+1 -1
View File
@@ -1,6 +1,6 @@
--------------------------------------------------------------------
The PHP License, version 3.01
Copyright (c) 1999 - 2016 The PHP Group. All rights reserved.
Copyright (c) 1999 - 2017 The PHP Group. All rights reserved.
--------------------------------------------------------------------
Redistribution and use in source and binary forms, with or without
+1 -1
View File
@@ -53,7 +53,7 @@ install-headers:
paths="$$paths $(INSTALL_ROOT)$(phpincludedir)/$$i"; \
done; \
$(mkinstalldirs) $$paths && \
echo "Installing header files: $(INSTALL_ROOT)$(phpincludedir)/" && \
echo "Installing header files: $(INSTALL_ROOT)$(phpincludedir)/" && \
for i in `echo $(INSTALL_HEADERS)`; do \
if test "$(PHP_PECL_EXTENSION)"; then \
src=`echo $$i | $(SED) -e "s#ext/$(PHP_PECL_EXTENSION)/##g"`; \
+2986 -639
View File
File diff suppressed because it is too large. Load diff
+12 -9
View File
@@ -93,24 +93,27 @@ Commit the changes to the main branch.
12. run: ``PHPROOT=. ./makedist 5.4.2RC2``, this will export the tree, create configure
and build three tarballs (gz, bz2 and xz).
13. Copy those tarballs (scp, rsync) to downloads.php.net, in your homedir there should be a
13. run ``scripts/dev/gen_verify_stub <version> [identity]``, this will sign the tarballs
and output verification information to be included in announcement email
14. Copy those tarballs (scp, rsync) to downloads.php.net, in your homedir there should be a
directory "downloads/". Copy them into there, so that the system can generate
MD5 sums. If you do not have this directory, talk to Derick or Dan.
14. Now the RC can be found on http://downloads.php.net/yourname,
15. Now the RC can be found on http://downloads.php.net/yourname,
f.e. http://downloads.php.net/derick/
15. Once the release has been tagged, contact the PHP Windows development team
16. Once the release has been tagged, contact the PHP Windows development team
(internals-win@lists.php.net) so that Windows binaries can be created. Once
those are made, they should be placed into the same directory as the source snapshots.
Getting the non stable release (alpha/beta/RC) announced
--------------------------------------------------------
1. Send an email (see example here: http://news.php.net/php.internals/19486)
**To** ``internals@lists.php.net`` and ``php-general@lists.php.net`` lists
pointing out "the location of the release" and "the possible release date of
either the next RC, or the final release".
1. Send an email **To** ``internals@lists.php.net`` and ``php-general@lists.php.net``
lists pointing out "the location of the release" and "the possible release date of
either the next RC, or the final release". Include in this information the verification
information output by ``gen_verify_stub``.
2. Send an email (see example here http://news.php.net/php.pear.qa/5201) **To**
``php-qa@lists.php.net`` and ``primary-qa-tester@lists.php.net``.
@@ -190,8 +193,8 @@ Check if the pear files are updated (phar).
This is to fetch the last commit id from php-distributions.git and commit this
last commit id to web/php.git, then, mirrors will now sync
12. Once the release has been tagged, contact the PHP Windows development team
(internals-win@lists.php.net) so that Windows binaries can be created.
12. Once the release has been tagged, contact release managers, windows builders, and package maintainers
so that they can build releases. Do not send this announcement to any public lists.
Getting the stable release announced
------------------------------------
+1
View File
@@ -5,6 +5,7 @@ This is the github mirror of the official PHP repository located at
http://git.php.net.
[![Build Status](https://secure.travis-ci.org/php/php-src.svg?branch=master)](http://travis-ci.org/php/php-src)
[![Build status](https://ci.appveyor.com/api/projects/status/meyur6fviaxgdwdy?svg=true)](https://ci.appveyor.com/project/php/php-src)
Pull Requests
=============
+26 -29
View File
@@ -66,7 +66,7 @@ dnl
dnl Check whether the current setup can use POSIX threads calls
dnl
AC_DEFUN([PTHREADS_CHECK_COMPILE], [
AC_TRY_RUN( [
AC_LINK_IFELSE([ AC_LANG_SOURCE([
#include <pthread.h>
#include <stddef.h>
@@ -80,18 +80,11 @@ int main() {
int data = 1;
pthread_mutexattr_init(&mattr);
return pthread_create(&thd, NULL, thread_routine, &data);
} ], [
pthreads_working=yes
} ]) ], [
pthreads_checked=yes
], [
pthreads_working=no
], [
dnl For cross compiling running this test is of no use. NetWare supports pthreads
pthreads_working=no
case $host_alias in
*netware*)
pthreads_working=yes
esac
]
pthreads_checked=no
]
) ] )dnl
dnl
dnl PTHREADS_CHECK()
@@ -129,30 +122,34 @@ else
CFLAGS="$CFLAGS $flag"
PTHREADS_CHECK_COMPILE
CFLAGS=$ac_save
if test "$pthreads_working" = "yes"; then
if test "$pthreads_checked" = "yes"; then
ac_cv_pthreads_cflags=$flag
break
fi
done
fi
fi
])
])
AC_CACHE_CHECK(for pthreads_lib, ac_cv_pthreads_lib,[
ac_cv_pthreads_lib=
if test "$pthreads_working" != "yes"; then
for lib in pthread pthreads c_r; do
ac_save=$LIBS
LIBS="$LIBS -l$lib"
PTHREADS_CHECK_COMPILE
LIBS=$ac_save
if test "$pthreads_working" = "yes"; then
ac_cv_pthreads_lib=$lib
break
fi
done
AC_CACHE_CHECK(for pthreads_lib, ac_cv_pthreads_lib,[
ac_cv_pthreads_lib=
if test "$pthreads_working" != "yes"; then
for lib in pthread pthreads c_r; do
ac_save=$LIBS
LIBS="$LIBS -l$lib"
PTHREADS_CHECK_COMPILE
LIBS=$ac_save
if test "$pthreads_checked" = "yes"; then
ac_cv_pthreads_lib=$lib
break
fi
done
fi
])
if test "x$ac_cv_pthreads_cflags" != "x" -o "x$ac_cv_pthreads_lib" != "x"; then
pthreads_working="yes"
fi
fi
])
if test "$pthreads_working" = "yes"; then
threads_result="POSIX-Threads found"
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| PHP Version 7 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2016 The PHP Group |
| Copyright (c) 1997-2017 The PHP Group |
+----------------------------------------------------------------------+
| This source file is subject to version 3.01 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| PHP Version 7 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2016 The PHP Group |
| Copyright (c) 1997-2017 The PHP Group |
+----------------------------------------------------------------------+
| This source file is subject to version 3.01 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
+3 -4
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| PHP Version 7 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2016 The PHP Group |
| Copyright (c) 1997-2017 The PHP Group |
+----------------------------------------------------------------------+
| This source file is subject to version 3.01 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
@@ -721,7 +721,6 @@ TSRM_API int shmget(int key, int size, int flags)
TSRM_API void *shmat(int key, const void *shmaddr, int flags)
{
shm_pair *shm = shm_get(key, NULL);
int err;
if (!shm->segment) {
return (void*)-1;
@@ -729,8 +728,8 @@ TSRM_API void *shmat(int key, const void *shmaddr, int flags)
shm->addr = MapViewOfFileEx(shm->segment, FILE_MAP_ALL_ACCESS, 0, 0, 0, NULL);
err = GetLastError();
if (err) {
if (NULL == shm->addr) {
int err = GetLastError();
SET_ERRNO_FROM_WIN32_CODE(err);
return (void*)-1;
}
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| PHP Version 7 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2016 The PHP Group |
| Copyright (c) 1997-2017 The PHP Group |
+----------------------------------------------------------------------+
| This source file is subject to version 3.01 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
+85 -19
View File
@@ -49,9 +49,9 @@ PHP 7.1 UPGRADE NOTES
the notice level only.
. Don't call destructors of incompletely constructed objects, even if they
are kept referenced. See bug #29368 and Zend/tests/bug29368_1.phpt.
. call_user_func() will now consistently fail to perform calls to functions
that accept reference arguments. Previously this sometimes worked if
call_user_func() was used outside a namespace.
. call_user_func() will now consistently throw a warning if a function with
reference arguments is called. However, call_user_func() will no longer
abort the call in this case.
. rand() and srand() are now aliases of mt_rand() and mt_srand().
Consequently the output of the following functions has changed:
. rand()
@@ -80,6 +80,21 @@ PHP 7.1 UPGRADE NOTES
fatal error" to "Recoverable fatal error".
. The empty index operator (e.g. $str[] = $x) is not supported for strings
anymore, and throws a fatal error instead of silently converting to array.
. Array elements or object properties that are automatically created during
by-reference assignments will now result in a different order. For example
$array = [];
$array["a"] =& $array["b"];
$array["b"] = 1;
var_dump($array);
now results in the array ["b" => 1, "a" => 1], while for PHP 7.0 the result
was ["a" => 1, "b" => 1].
. The allowed_classes element of the $options parameter of unserialize() is
now strictly typed, i.e. if anything other than an array or a boolean is
given, unserialize() returns FALSE and issues an E_WARNING.
. $this, autoglobals, and variables with the same name as a parameter can no
longer be bound to a closure via the use construct.
- JSON:
. The serialize_precision is used instead of precision when encoding double
@@ -97,40 +112,39 @@ PHP 7.1 UPGRADE NOTES
. Dropped sslv2 stream.
- Session:
. Session ID is generated from CSPNG directly. As a result, Session ID length
. Session ID is generated from CSPRNG directly. As a result, Session ID length
could be any length between 22 and 256. Note: Max size of session ID depends
on save handler you are using.
. Following INIs are removed
. session.hash_function
. session.hash_bits_per_charactor
. session.hash_bits_per_character
. session.entropy_file
. session.entropy_length
. New INIs and defaults
. session.sid_length (Number of session ID characters - 22 to 256.
(php.ini-* default: 26 Compiled default: 32)
. session.sid_bits_per_character (Bits used per character. 4 to 6.
php.ini-* default: 26 Compiled default: 32)
. session.sid_bits_per_character (Bits used per character - 4 to 6.
php.ini-* default: 5 Compiled default: 4)
Length of old session ID string is determined as follows
. Length of old session ID string is determined as follows
. Used hash function's bits.
. session.hash_function=0 - MD5 128 bits (This was default)
. session.hash_function=1 - SHA1 192 bits
. session.hash_function=1 - SHA1 160 bits
. Bits per character. (4, 5 or 6 bits per character)
. Examples
MD5 and 4 bits = 32 chars, ceil(128/4)=32
MD5 and 5 bits = 26 chars, ceil(128/5)=26
MD5 and 6 bits = 22 chars, ceil(128/6)=22
SHA1 and 4 bits = 48 chars, ceil(192/4)=48
SHA2 and 5 bits = 39 chars, ceil(192/5)=39
SHA1 and 6 bits = 32 chars, ceil(192/6)=32
SHA1 and 4 bits = 40 chars, ceil(160/4)=40
SHA1 and 5 bits = 32 chars, ceil(160/5)=32
SHA1 and 6 bits = 27 chars, ceil(160/6)=27
and so on.
. session_start() returns FALSE and no longer initializes $_SESSION when
it failed to start session.
- Reflection:
. The behavior of ReflectionMethod::invoke() and ::invokeArgs() has been
aligned, which causes slightly different behavior than before for some
pathological cases.
. ReflectionType::__toString() will now return the type name with a leading
"?" if it is nullable. To retrieve the type name without leading "?" the new
ReflectionNamedType::getName() method can be used.
========================================
2. New Features
@@ -168,6 +182,8 @@ PHP 7.1 UPGRADE NOTES
type declarations, and some internal functions. Both nullable type
declarations (?int) and parameters with default values of null
(int $foo = NULL) are considered to "accept null" for this purpose.
. The simple syntax for variable parsing inside of string literals now
supports negative offsets.
========================================
3. Changes in SAPI modules
@@ -195,6 +211,8 @@ PHP 7.1 UPGRADE NOTES
disables escaping of U+2028 and U+2029 characters when
JSON_UNESCAPED_UNICODE is supplied.
- long2ip() accepts integer as parameter now
- openssl_encrypt and openssl_decrypt have extra parameters for handling
authenticated encryption (tag, aad, tag_length) and decryption (tag, aad).
- pg_last_notice() accepts optional long parameter to specify operation.
PGSQL_NOTICE_LAST - Get last notice (Default)
PGSQL_NOTICE_ALL - Get all stored notices
@@ -221,6 +239,10 @@ PHP 7.1 UPGRADE NOTES
- output_reset_rewrite_vars() no longer reset session URL rewrite vars.
- the lasinsertid() in pdo_pgsql extension triggers an error, when no nextval()
were called in in the current session.
- fopen()
Since 7.1.2, mode 'e' was added, which sets the close-on-exec flag
on the opened file descriptor. This mode is only available in PHP compiled on
POSIX.1-2008 conform systems.
========================================
@@ -236,6 +258,11 @@ PHP 7.1 UPGRADE NOTES
. Added curl_share_strerror() to convert error code to error message text
describing the error.
- Hash:
. In PHP 7.1.2: Added hash_hkdf() function, which implements the HMAC-based
Key Derivation Function (HKDF) algorithm according to RFC 5869. The
implementation combines the Extract and Expand steps.
- pcntl:
. Added pcntl_signal_get_handler() that returns the current signal handler
for a particular signal.
@@ -269,6 +296,12 @@ PHP 7.1 UPGRADE NOTES
. Timezone initialization failure from serialized data will now throw an
instance of Error from __wakeup() or __set_state() instead of resulting in
a fatal error.
. DateTime and DateTimeImmutable now properly incorporate microseconds when
constructed from the current time, either explicitly or with a relative
string (e.g. "first day of next month"). This means that naive comparisons
of two newly created instances will now more likely return FALSE instead of
TRUE:
new DateTime() == new DateTime();
- DBA:
. Data modification functions (e.g.: dba_insert()) now throw an instance of
@@ -315,6 +348,13 @@ PHP 7.1 UPGRADE NOTES
. Attempting to read an invalid or write to a readonly property will throw
an instance of Error instead of resulting in a fatal error.
- PDO_Firebird
As of PHP 7.1.2, the fetched data for integer fields is aware of the Firebird
datatypes. Previously all integers was fetched as strings, starting with
aforementioned PHP version integer fields are translated to the PHP integer
datatype. The 64-bit integers are still fetched as strings in 32-bit PHP
builds.
- Reflection:
. Failure to retrieve a reflection object or retrieve an object property
will now throw an instance of Error instead of resulting in a fatal error.
@@ -376,6 +416,9 @@ PHP 7.1 UPGRADE NOTES
PGSQL_NOTICE_ALL
PGSQL_NOTICE_CLEAR
- Standard:
. IMAGETYPE_WEBP
========================================
11. Changes to INI File Handling
========================================
@@ -388,6 +431,9 @@ PHP 7.1 UPGRADE NOTES
. If the value is set to -1, then the dtoa mode 0 is used. No changes
in default value which is still 14.
- realpath_cache_size
. Set to 4096k by default
========================================
12. Windows Support
========================================
@@ -395,7 +441,7 @@ PHP 7.1 UPGRADE NOTES
- Core:
. Support for long and UTF-8 path;
If an application is UTF-8 conform, no further action is required. For
If a web application is UTF-8 conform, no further action is required. For
applications depending on paths in non UTF-8 encodings for I/O, an explicit
INI directive has to be set. The encoding INI settings check relies on the
order in the core:
@@ -421,8 +467,26 @@ PHP 7.1 UPGRADE NOTES
particular console program used. PHP automatically sets the console codepage
according to the encoding rules from php.ini. Using alternative consoles
instead of cmd.exe directly might bring better experience in some cases.
Nevertheless be aware, runtime codepage switch after the request start
might bring unexpected side effects on CLI. The preferrable way is php.ini.
might bring unexpected side effects on CLI. The preferrable way is php.ini,
When PHP CLI is used in a console emulator, that doesn't support Unicode,
it might possibly be required, to avoid changing the console codepage. The
best way to achieve it is by setting the default or internal encoding to
correspond the ANSI codepage. Another method is to set the INI directives
output_encoding and input_encoding to the required codepage, in which case
however the difference between internal and I/O codepage is likely to cause
mojibake. In rare cases, if PHP happens to crash gracefully, the original
console codepage might be not restored. In this case, the chcp command
can be used, to restore it manually.
Special awareness for the DBCS systems - the codepage switch on runtime
using ini_set() is likely to cause display issues. The difference to the
non DBCS systems is, that the extended characters require two console cells
to be displayed. In certain case, only the mapping of the characters into
the glyph set of the font could happen, no actual font change. This is the
nature of DBCS systems, the most simple way to prevent display issues is
to avoid usage of ini_set() for the codepage change.
As a result of UTF-8 support in the streams, PHP scripts are not limited
to ASCII or ANSI filenames anymore. This is supported out of the box on
@@ -434,8 +498,10 @@ PHP 7.1 UPGRADE NOTES
2048 bytes. Be aware, that the path segment limit (basename length) still
persists.
The recommended way to handle file paths, I/O and other related topics is
by utilizing UTF-8.
For the best portability, it is strongely recommended to handle filenames,
I/O and other related topics UTF-8. Additionally, for the console applications,
the usage of a TrueType font is preferrable and the usage of ini_set() for
the codepage change is discouraged.
. Support for ftok()
+1 -1
View File
@@ -100,7 +100,7 @@ AC_FUNC_ALLOCA
AC_CHECK_FUNCS(memcpy strdup getpid kill strtod strtol finite fpclass sigsetjmp)
AC_ZEND_BROKEN_SPRINTF
AC_CHECK_FUNCS(finite isfinite isinf isnan)
AC_CHECK_DECLS([isfinite, isnan, isinf], [], [], [[#include <math.h>]])
ZEND_FP_EXCEPT
+8 -8
View File
@@ -64,33 +64,33 @@ int zend_sprintf(char *buffer, const char *format, ...);
/* To enable the is_nan, is_infinite and is_finite PHP functions */
#ifdef NETWARE
#define HAVE_ISNAN 1
#define HAVE_ISINF 1
#define HAVE_ISFINITE 1
#define HAVE_DECL_ISNAN 1
#define HAVE_DECL_ISINF 1
#define HAVE_DECL_ISFINITE 1
#endif
#ifndef zend_isnan
#ifdef HAVE_ISNAN
#if HAVE_DECL_ISNAN
#define zend_isnan(a) isnan(a)
#elif defined(HAVE_FPCLASS)
#define zend_isnan(a) ((fpclass(a) == FP_SNAN) || (fpclass(a) == FP_QNAN))
#else
#define zend_isnan(a) 0
#define zend_isnan(a) ((a) != (a))
#endif
#endif
#ifdef HAVE_ISINF
#if HAVE_DECL_ISINF
#define zend_isinf(a) isinf(a)
#elif defined(INFINITY)
/* Might not work, but is required by ISO C99 */
#define zend_isinf(a) (((a)==INFINITY)?1:0)
#define zend_isinf(a) (((a)==INFINITY || (a)==-INFINITY)?1:0)
#elif defined(HAVE_FPCLASS)
#define zend_isinf(a) ((fpclass(a) == FP_PINF) || (fpclass(a) == FP_NINF))
#else
#define zend_isinf(a) 0
#endif
#if defined(HAVE_ISFINITE) || defined(isfinite)
#if HAVE_DECL_ISFINITE
#define zend_finite(a) isfinite(a)
#elif defined(HAVE_FINITE)
#define zend_finite(a) finite(a)
-4
View File
@@ -26,7 +26,6 @@ var_dump(count(get_defined_constants()));
function test () {
}
var_dump(get_defined_functions(true));
var_dump(gettype(get_defined_functions()));
var_dump(count(get_defined_functions()));
@@ -65,9 +64,6 @@ NULL
string(5) "array"
string(5) "array"
int(%d)
Warning: get_defined_functions() expects exactly 0 parameters, 1 given in %s on line %d
NULL
string(5) "array"
int(%d)
@@ -0,0 +1,25 @@
--TEST--
Next free element may overflow in array literals
--FILE--
<?php
$i = PHP_INT_MAX;
$array = [$i => 42, new stdClass];
var_dump($array);
const FOO = [PHP_INT_MAX => 42, "foo"];
var_dump(FOO);
?>
--EXPECTF--
Warning: Cannot add element to the array as the next element is already occupied in %s on line %d
array(1) {
[%d]=>
int(42)
}
Warning: Cannot add element to the array as the next element is already occupied in %s on line %d
array(1) {
[%d]=>
int(42)
}
@@ -0,0 +1,56 @@
--TEST--
Various null return conditions of dim/obj assignments
--FILE--
<?php
function test() {
$array = [PHP_INT_MAX => 42];
$true = true;
var_dump($array[] = 123);
var_dump($array[[]] = 123);
var_dump($array[new stdClass] = 123);
var_dump($true[123] = 456);
var_dump($array[] += 123);
var_dump($array[[]] += 123);
var_dump($array[new stdClass] += 123);
var_dump($true[123] += 456);
var_dump($true->foo = 123);
var_dump($true->foo += 123);
}
test();
?>
--EXPECTF--
Warning: Cannot add element to the array as the next element is already occupied in %s on line %d
NULL
Warning: Illegal offset type in %s on line %d
NULL
Warning: Illegal offset type in %s on line %d
NULL
Warning: Cannot use a scalar value as an array in %s on line %d
NULL
Warning: Cannot add element to the array as the next element is already occupied in %s on line %d
NULL
Warning: Illegal offset type in %s on line %d
NULL
Warning: Illegal offset type in %s on line %d
NULL
Warning: Cannot use a scalar value as an array in %s on line %d
NULL
Warning: Attempt to assign property of non-object in %s on line %d
NULL
Warning: Attempt to assign property of non-object in %s on line %d
NULL
+12
View File
@@ -0,0 +1,12 @@
--TEST--
Assign to $this leaks when $this not defined
--FILE--
<?php
try {
$this->a = new stdClass;
} catch (Error $e) { echo $e->getMessage(), "\n"; }
?>
--EXPECT--
Using $this when not in object context
+11
View File
@@ -0,0 +1,11 @@
--TEST--
ZEND_POW_ASSIGN
--INI--
zend.assertions=1
--FILE--
<?php
assert_options(ASSERT_WARNING);
assert(false && ($a **= 2));
--EXPECTF--
Warning: assert(): assert(false && ($a **= 2)) failed in %s%ezend-pow-assign.php on line %d
+2
View File
@@ -1,5 +1,7 @@
--TEST--
Bug #63734 (Garbage collector can free zvals that are still referenced)
--INI--
zend.enable_gc = 1
--FILE--
<?php
class C {
+2
View File
@@ -1,5 +1,7 @@
--TEST--
Bug #69446 (GC leak relating to removal of nested data after dtors run)
--INI--
zend.enable_gc = 1
--FILE--
<?php
$bar = NULL;
+2
View File
@@ -1,5 +1,7 @@
--TEST--
Bug #69446 (GC leak relating to removal of nested data after dtors run)
--INI--
zend.enable_gc = 1
--FILE--
<?php
$bar = NULL;
+2
View File
@@ -1,5 +1,7 @@
--TEST--
Bug #69534 (Cycle leaks through declared properties on internal classes)
--INI--
zend.enable_gc = 1
--FILE--
<?php
class Node extends SplObjectStorage {
+22
View File
@@ -0,0 +1,22 @@
--TEST--
Bug #69676: Resolution of self::FOO in class constants not correct (variation)
--FILE--
<?php
class Foo {
const A = 'Foo::A';
const B = self::A . ' and ' . self::C;
const C = 'Foo::C';
}
class Bar extends Foo {
const A = 'Bar::A';
const C = 'Bar::C';
}
var_dump(Bar::B);
?>
--EXPECT--
string(17) "Foo::A and Foo::C"
+69
View File
@@ -0,0 +1,69 @@
--TEST--
Bug #69676: Resolution of self::FOO in class constants not correct (variation)
--FILE--
<?php
class P {
const N = 'P';
}
class A extends P {
const selfN = self::N;
const parentN = parent::N;
const N = 'A';
}
class B extends A {
const N = 'B';
}
var_dump(B::selfN); // A
var_dump(B::parentN); // P
class A2 {
const selfN = self::N;
const N = 'A2';
}
class B2 extends A2 {
const indSelfN = self::selfN;
const N = 'B2';
}
class C2 extends B2 {
const N = 'C2';
}
var_dump(C2::indSelfN); // A2
class A3 {
const selfN = self::N;
const N = 'A3';
}
class B3 extends A3 {
const exprSelfN = "expr" . self::selfN;
const N = 'B3';
}
class C3 extends B3 {
const N = 'C3';
}
var_dump(C3::exprSelfN); // exprA3
class A4 {
const selfN = self::N;
const N = 'A4';
}
class B4 extends A4 {
const N = 'B4';
public $prop = self::selfN;
}
class C4 extends B4 {
const N = 'C4';
}
var_dump((new C4)->prop); // A4
?>
--EXPECT--
string(1) "A"
string(1) "P"
string(2) "A2"
string(6) "exprA3"
string(2) "A4"
+1 -1
View File
@@ -7,7 +7,7 @@ $r = new ReflectionMethod($f, '__invoke');
var_dump($r->getParameters()[0]->getName());
var_dump($r->getParameters()[0]->getClass());
echo $r->getParameters()[0], "\n";
echo $r->getReturnType(),"\n";
echo $r->getReturnType()->getName(), "\n";
echo $r,"\n";
?>
--EXPECT--
+2
View File
@@ -1,5 +1,7 @@
--TEST--
Bug #70805 (Segmentation faults whilst running Drupal 8 test suite) (Crash)
--INI--
zend.enable_gc = 1
--FILE--
<?php
class A {
+2
View File
@@ -1,5 +1,7 @@
--TEST--
Bug #70805 (Segmentation faults whilst running Drupal 8 test suite) (Memleak)
--INI--
zend.enable_gc = 1
--FILE--
<?php
class A {
+2
View File
@@ -1,5 +1,7 @@
--TEST--
Bug #71818 (Memory leak when array altered in destructor)
--INI--
zend.enable_gc = 1
--FILE--
<?php
class MemoryLeak
+1 -1
View File
@@ -79,7 +79,7 @@ Stack trace:
#0 %sbug72101.php(8): {closure}(2, 'Parameter 1 to ...', '%s', 8, Array)
#1 %sbug72101.php(27): PHPUnit_Framework_MockObject_Stub_ReturnCallback->invoke(Object(PHPUnit_Framework_MockObject_Invocation_Static))
#2 %sbug72101.php(19): PHPUnit_Framework_MockObject_Matcher->invoked(Object(PHPUnit_Framework_MockObject_Invocation_Static))
#3 %sbug72101.php(51): PHPUnit_Framework_MockObject_InvocationMocker->invoke(Object(PHPUnit_Framework_MockObject_Invocation_Static))
#3 %sbug72101.php(52): PHPUnit_Framework_MockObject_InvocationMocker->invoke(Object(PHPUnit_Framework_MockObject_Invocation_Static))
#4 %sbug72101.php(72): Mock_MethodCallbackByReference_7b180d26->bar(0, 0, 0)
#5 {main}
thrown in %sbug72101.php on line 61
+22
View File
@@ -0,0 +1,22 @@
--TEST--
Bug #72918 (negative offset inside a quoted string leads to parse error)
--FILE--
<?php
$array = [-3 => 'foo'];
$string = 'abcde';
echo "$array[-3]\n";
echo "$string[-3]\n";
echo <<<EOT
$array[-3]
$string[-3]
EOT;
?>
===DONE===
--EXPECT--
foo
c
foo
c
===DONE===
-21
View File
@@ -1,21 +0,0 @@
--TEST--
Bug #73067 (__debugInfo crashes when throwing an exception)
--FILE--
<?php
class Debug
{
public function __debugInfo()
{
throw new Exception("Test Crash");
}
}
try {
var_dump(new Debug());
} catch (Exception $e) {
echo $e->getMessage();
}
?>
--EXPECTF--
Fatal error: __debuginfo() must return an array in %sbug73067.php on line %d
+50
View File
@@ -0,0 +1,50 @@
--TEST--
Bug #73156 (segfault on undefined function)
--FILE--
<?php
class A {
public function __call($name, $args) {
eval('$args = array(); var_dump(debug_backtrace());');
}
}
$a = new A();
$a->test("test");
?>
--EXPECTF--
array(2) {
[0]=>
array(3) {
["file"]=>
string(%d) "%sbug73156.php"
["line"]=>
int(4)
["function"]=>
string(4) "eval"
}
[1]=>
array(7) {
["file"]=>
string(%d) "%sbug73156.php"
["line"]=>
int(10)
["function"]=>
string(6) "__call"
["class"]=>
string(1) "A"
["object"]=>
object(A)#%d (0) {
}
["type"]=>
string(2) "->"
["args"]=>
array(2) {
[0]=>
string(4) "test"
[1]=>
array(0) {
}
}
}
}
+22
View File
@@ -0,0 +1,22 @@
--TEST--
Bug #73163 (PHP hangs if error handler throws while accessing undef const in default value)
--FILE--
<?php
function doSomething(string $value = UNDEFINED) {
}
set_error_handler(function($errno, $errstr) {
throw new Exception($errstr);
});
doSomething();
?>
--EXPECTF--
Fatal error: Uncaught Exception: Use of undefined constant UNDEFINED - assumed 'UNDEFINED' in %s:%d
Stack trace:
#0 %s(%d): {closure}(%s)
#1 %s(%d): doSomething()
#2 {main}
thrown in %s on line %d
+20
View File
@@ -0,0 +1,20 @@
--TEST--
Bug #73181: parse_str() without a second argument leads to crash
--FILE--
<?php
function x() {
parse_str("1&x");
var_dump(get_defined_vars());
}
x();
?>
--EXPECT--
array(2) {
[1]=>
string(0) ""
["x"]=>
string(0) ""
}
+34
View File
@@ -0,0 +1,34 @@
--TEST--
Bug #73288 (Segfault in __clone > Exception.toString > __get)
--INI--
opcache.enable=1
opcache.enable_cli=1
--FILE--
<?php
class NoClone {
public function __clone() {
throw new Exception("No Cloneable");
}
}
class C {
public function __get($name) {
return new NoClone;
}
}
function test_clone() {
$c = new C;
$b = clone $c->x;
}
test_clone();
?>
--EXPECTF--
Fatal error: Uncaught Exception: No Cloneable in %sbug73288.php:%d
Stack trace:
#0 %s(%d): NoClone->__clone()
#1 %s(%d): test_clone()
#2 {main}
thrown in %sbug73288.php on line %d
+12
View File
@@ -0,0 +1,12 @@
--TEST--
Bug #73337 (try/catch not working with two exceptions inside a same operation)
--FILE--
<?php
class d { function __destruct() { throw new Exception; } }
try { new d + new d; } catch (Exception $e) { print "Exception properly caught\n"; }
?>
--EXPECTF--
Notice: Object of class d could not be converted to int in %sbug73337.php on line 3
Notice: Object of class d could not be converted to int in %sbug73337.php on line 3
Exception properly caught
+18
View File
@@ -0,0 +1,18 @@
--TEST--
Bug #73338: Ensure exceptions in function init opcodes are cleaned properly
--FILE--
<?php
try { call_user_func(new class { function __destruct () { throw new Error; } }); } catch (Error $e) {}
set_error_handler(function() { throw new Error; });
try { var_dump(new stdClass, call_user_func("fail")); } catch (Error $e) {}
try { (function() { call_user_func("fail"); })(); } catch (Error $e) {}
try { [new class { static function foo() {} function __destruct () { throw new Error; } }, "foo"](); } catch (Error $e) {}
?>
--EXPECTF--
Warning: call_user_func() expects parameter 1 to be a valid callback, no array or string given in %s on line %d
+27
View File
@@ -0,0 +1,27 @@
--TEST--
Bug #73350 (Exception::__toString() cause circular references)
--FILE--
<?php
$e = new Exception();
// This line cause problem :(
// Comment it to see the difference.
(string) $e;
// This line show the clue (PHP Warning: ...).
var_export($e);
?>
--EXPECTF--
Exception::__set_state(array(
'message' => '',
'string' => 'Exception in %sbug73350.php:%d
Stack trace:
#0 {main}',
'code' => 0,
'file' => '%sbug73350.php',
'line' => %d,
'trace' =>
array (
),
'previous' => NULL,
))
+73
View File
@@ -0,0 +1,73 @@
--TEST--
Bug #73663 ("Invalid opcode 65/16/8" occurs with a variable created with list())
--FILE--
<?php
function change(&$ref) {
$ref = range(1, 10);
return;
}
$func = function (&$ref) {
return change($ref);
};
$array = [1];
var_dump(list($val) = $array); // NG: Invalid opcode
change(list($val) = $array);
var_dump($array);
$array = [1];
$func(list($val) = $array);
var_dump($array);
?>
--EXPECT--
array(1) {
[0]=>
int(1)
}
array(10) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
[3]=>
int(4)
[4]=>
int(5)
[5]=>
int(6)
[6]=>
int(7)
[7]=>
int(8)
[8]=>
int(9)
[9]=>
int(10)
}
array(10) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
[3]=>
int(4)
[4]=>
int(5)
[5]=>
int(6)
[6]=>
int(7)
[7]=>
int(8)
[8]=>
int(9)
[9]=>
int(10)
}
+29
View File
@@ -0,0 +1,29 @@
--TEST--
Bug #73753 Non packed arrays and duplication
--FILE--
<?php
function iterate($current, $a, $result = null) {
if (!$current) {
return $result;
}
return iterate(getNext($a), $a, $current);
}
function getNext(&$a) {
return next($a);
}
function getCurrent($a) {
return current($a);
}
function traverse($a) {
return iterate(getCurrent($a), $a);
}
$arr = array(1 => 'foo', 'b' => 'bar', 'baz');
var_dump(traverse($arr));
?>
--EXPECTF--
string(3) "baz"
+20
View File
@@ -0,0 +1,20 @@
--TEST--
Bug #73792 (invalid foreach loop hangs script)
--FILE--
<?php
$a = 'aaa';
foreach ($a['bbb'] as &$value) {
echo 'loop';
}
unset($value);
echo 'done';
?>
--EXPECTF--
Warning: Illegal string offset 'bbb' in %sbug73792.php on line 4
Fatal error: Uncaught Error: Cannot iterate on string offsets by reference in %sbug73792.php:4
Stack trace:
#0 {main}
thrown in %sbug73792.php on line 4
+16
View File
@@ -0,0 +1,16 @@
--TEST--
Bug #73916 (zend_print_flat_zval_r doesn't consider reference)
--FILE--
<?php
$a = array('a');
class b{};
$b = new b;
$test[] =& $a;
$test[] =& $b;
test($test);
function test() {
debug_print_backtrace();
}
?>
--EXPECTF--
#0 test(Array ([0] => Array ([0] => a),[1] => b Object ())) called at [%sbug73916.php:%d]
+23
View File
@@ -0,0 +1,23 @@
--TEST--
Bug #73954 (NAN check fails on Alpine Linux with musl)
--FILE--
<?php
var_dump(NAN);
var_dump(is_nan(NAN));
function takes_int(int $int) {
}
takes_int(log(tan(3.14)));
?>
--EXPECTF--
float(NAN)
bool(true)
Fatal error: Uncaught TypeError: Argument 1 passed to takes_int() must be of the type integer, float given, called in %s on line 9 and defined in %s:6
Stack trace:
#0 %s(9): takes_int(NAN)
#1 {main}
thrown in %s on line 6
+16
View File
@@ -0,0 +1,16 @@
--TEST--
Bug #73960: Leak with instance method calling static method with referenced return
--FILE--
<?php
$value = 'one';
$array = array($value);
$array = $ref =& $array;
var_dump($array);
?>
--EXPECT--
array(1) {
[0]=>
string(3) "one"
}
+28
View File
@@ -0,0 +1,28 @@
--TEST--
Bug #73989 (PHP 7.1 Segfaults within Symfony test suite)
--FILE--
<?php
class Cycle
{
private $thing;
public function __construct()
{
$obj = $this;
$this->thing = function() use($obj) {};
}
public function __destruct()
{
($this->thing)();
}
}
for ($i = 0; $i < 10000; ++$i) {
$obj = new Cycle();
}
echo "OK\n";
?>
--EXPECT--
OK
+19
View File
@@ -0,0 +1,19 @@
--TEST--
Bug #73998 (array_key_exists fails on arrays created by get_object_vars)
--DESCRIPTION--
Properties of objects with numeric names should be accessible
--FILE--
<?php
$a = new stdClass;
$a->{1234} = "Numeric";
$a->a1234 = "String";
$properties = get_object_vars($a);
var_dump(array_key_exists(1234, $properties));
echo "Value: {$properties[1234]}\n";
?>
--EXPECT--
bool(true)
Value: Numeric
+19
View File
@@ -0,0 +1,19 @@
--TEST--
Bug #74084 (Out of bound read - zend_mm_alloc_small)
--INI--
error_reporting=0
--FILE--
<?php
$$A += $$B->a = &$$C;
unset($$A);
$$A -= $$B->a = &$$C;
unset($$A);
$$A *= $$B->a = &$$C;
unset($$A);
$$A /= $$B->a = &$$C;
unset($$A);
$$A **= $$B->a = &$$C;
var_dump($$A);
?>
--EXPECT--
int(1)
+20
View File
@@ -0,0 +1,20 @@
--TEST--
Bug #74093 (Maximum execution time of n+2 seconds exceed not written in error_log)
--SKIPIF--
<?php
if (getenv("SKIP_SLOW_TESTS")) die("skip slow test");
if (PHP_ZTS) die("skip only for no-zts build");
if (substr(PHP_OS, 0, 3) == 'WIN') die("skip not for Windows");
?>
--INI--
memory_limit=1G
max_execution_time=1
hard_timeout=1
--FILE--
<?php
$a1 = range(1, 1000000);
$a2 = range(100000, 1999999);
array_intersect($a1, $a2);
?>
--EXPECTF--
Fatal error: Maximum execution time of 1+1 seconds exceeded %s
+20
View File
@@ -0,0 +1,20 @@
--TEST--
Bug #74164 (PHP hangs when an invalid value is dynamically passed to typehinted by-ref arg)
--FILE--
<?php
namespace Foo;
set_error_handler(function ($type, $msg) {
throw new \Exception($msg);
});
call_user_func(function (array &$ref) {var_dump("xxx");}, 'not_an_array_variable');
?>
--EXPECTF--
Fatal error: Uncaught Exception: Parameter 1 to Foo\{closure}() expected to be a reference, value given in %sbug74164.php:%d
Stack trace:
#0 [internal function]: Foo\{closure}(%s)
#1 %sbug74164.php(%d): call_user_func(%s)
#2 {main}
thrown in %sbug74164.php on line %d
+14
View File
@@ -0,0 +1,14 @@
--TEST--
Fixes bug 74188 (undeclared static variables emit a warning with ?? operator)
--FILE--
<?php
abstract class Test
{
public static function get()
{
static::$a ?? true;
}
}
Test::get();
?>
--EXPECT--
+30
View File
@@ -0,0 +1,30 @@
--TEST--
Bug #74340: Magic function __get has different behavior in php 7.1.x
--FILE--
<?php
class Test
{
public function __get($var)
{
static $first = true;
echo '__get '.$var.PHP_EOL;
if ($first) {
$first = false;
$this->$var;
$this->{$var.'2'};
$this->$var;
}
}
}
$test = new Test;
$test->test;
?>
--EXPECTF--
__get test
Notice: Undefined property: Test::$test in %s on line %d
__get test2
Notice: Undefined property: Test::$test in %s on line %d
+38
View File
@@ -0,0 +1,38 @@
--TEST--
Bug #74408 (Endless loop bypassing execution time limit)
--INI--
error_reporting = E_ALL | E_DEPRECATED | E_STRICT
--FILE--
<?php
//php.ini: error_reporting = E_ALL | E_DEPRECATED | E_STRICT
class ErrorHandling {
public function error_handler($errno, $errstr, $errfile, $errline) {
$bla = new NonExistingClass2();
}
public function exception_handler(Error $e) {
echo "Caught, exception: " . $e->getMessage();
}
}
set_error_handler('ErrorHandling::error_handler');
set_exception_handler('ErrorHandling::exception_handler');
$blubb = new NonExistingClass();
?>
--EXPECTF--
Deprecated: Non-static method ErrorHandling::error_handler() should not be called statically in %sbug74408.php on line %d
Deprecated: Non-static method ErrorHandling::error_handler() should not be called statically in %sbug74408.php on line %d
Deprecated: Non-static method ErrorHandling::error_handler() should not be called statically in Unknown on line 0
Fatal error: Uncaught Error: Class 'NonExistingClass2' not found in %sbug74408.php:%d
Stack trace:
#0 [internal function]: ErrorHandling::error_handler(8192, 'Non-static meth...', '%s', %d, Array)
#1 %sbug74408.php(%d): set_exception_handler('ErrorHandling::...')
#2 {main}
thrown in %sbug74408.php on line %d
+17
View File
@@ -0,0 +1,17 @@
--TEST--
call_user_func() behavior when passing literal to reference parameter
--FILE--
<?php
namespace Foo;
var_dump(call_user_func('sort', []));
var_dump(\call_user_func('sort', []));
?>
--EXPECTF--
Warning: Parameter 1 to sort() expected to be a reference, value given in %s on line %d
bool(true)
Warning: Parameter 1 to sort() expected to be a reference, value given in %s on line %d
bool(true)
@@ -29,7 +29,7 @@ foreach ($callables as $callable) {
foreach ($refl->getParameters() as $param) {
if ($param->hasType()) {
$type = $param->getType();
echo $type->__toString() . "\n";
echo $type->getName() . "\n";
}
}
}
+184
View File
@@ -0,0 +1,184 @@
--TEST--
Behavior of failing compound assignment
--INI--
opcache.optimization_level=0
--FILE--
<?php
try {
$a = 1;
$a %= 0;
} catch (Error $e) { var_dump($a); }
try {
$a = 1;
$a >>= -1;
} catch (Error $e) { var_dump($a); }
try {
$a = 1;
$a <<= -1;
} catch (Error $e) { var_dump($a); }
set_error_handler(function($type, $msg) { throw new Exception($msg); });
try {
$a = [];
$a .= "foo";
} catch (Throwable $e) { var_dump($a); }
try {
$a = "foo";
$a .= [];
} catch (Throwable $e) { var_dump($a); }
$x = new stdClass;
try { $x += 1; }
catch (Exception $e) {}
var_dump($x);
$x = 1;
try { $x += new stdClass; }
catch (Exception $e) {}
var_dump($x);
$x = new stdClass;
try { $x -= 1; }
catch (Exception $e) {}
var_dump($x);
$x = 1;
try { $x -= new stdClass; }
catch (Exception $e) {}
var_dump($x);
$x = new stdClass;
try { $x *= 1; }
catch (Exception $e) {}
var_dump($x);
$x = 1;
try { $x *= new stdClass; }
catch (Exception $e) {}
var_dump($x);
$x = new stdClass;
try { $x /= 1; }
catch (Exception $e) {}
var_dump($x);
$x = 1;
try { $x /= new stdClass; }
catch (Exception $e) {}
var_dump($x);
$x = new stdClass;
try { $x %= 1; }
catch (Exception $e) {}
var_dump($x);
$x = 1;
try { $x %= new stdClass; }
catch (Exception $e) {}
var_dump($x);
$x = new stdClass;
try { $x **= 1; }
catch (Exception $e) {}
var_dump($x);
$x = 1;
try { $x **= new stdClass; }
catch (Exception $e) {}
var_dump($x);
$x = new stdClass;
try { $x ^= 1; }
catch (Exception $e) {}
var_dump($x);
$x = 1;
try { $x ^= new stdClass; }
catch (Exception $e) {}
var_dump($x);
$x = new stdClass;
try { $x &= 1; }
catch (Exception $e) {}
var_dump($x);
$x = 1;
try { $x &= new stdClass; }
catch (Exception $e) {}
var_dump($x);
$x = new stdClass;
try { $x |= 1; }
catch (Exception $e) {}
var_dump($x);
$x = 1;
try { $x |= new stdClass; }
catch (Exception $e) {}
var_dump($x);
$x = new stdClass;
try { $x <<= 1; }
catch (Exception $e) {}
var_dump($x);
$x = 1;
try { $x <<= new stdClass; }
catch (Exception $e) {}
var_dump($x);
$x = new stdClass;
try { $x >>= 1; }
catch (Exception $e) {}
var_dump($x);
$x = 1;
try { $x >>= new stdClass; }
catch (Exception $e) {}
var_dump($x);
?>
--EXPECTF--
int(1)
int(1)
int(1)
array(0) {
}
string(3) "foo"
object(stdClass)#%d (0) {
}
int(1)
object(stdClass)#%d (0) {
}
int(1)
object(stdClass)#%d (0) {
}
int(1)
object(stdClass)#%d (0) {
}
int(1)
object(stdClass)#%d (0) {
}
int(1)
object(stdClass)#%d (0) {
}
int(1)
object(stdClass)#%d (0) {
}
int(1)
object(stdClass)#%d (0) {
}
int(1)
object(stdClass)#%d (0) {
}
int(1)
object(stdClass)#%d (0) {
}
int(1)
object(stdClass)#%d (0) {
}
int(1)
+14 -28
View File
@@ -2,51 +2,37 @@
Concatenating many small strings should not slowdown allocations
--SKIPIF--
<?php if (PHP_DEBUG) { die ("skip debug version is slow"); } ?>
--INI--
memory_limit=256m
--FILE--
<?php
/* To note is that memory usage can vary depending on whether opcache is on. The actual
measuring that matters is timing here. */
$time = microtime(TRUE);
/* This might vary on Linux/Windows, so the worst case and also count in slow machines. */
$t0_max = 0.1;
$t1_max = 0.4;
$datas = [];
for ($i = 0; $i < 220000; $i++)
{
$datas[] = [
'000.000.000.000',
'000.255.255.255',
'保留地址',
'保留地址',
'保留地址',
'保留地址',
'保留地址',
'保留地址',
];
}
$t0 = microtime(TRUE) - $time;
var_dump($t0 < $t0_max);
$t_max = 1.0;
$datas = array_fill(0, 220000, [
'000.000.000.000',
'000.255.255.255',
'保留地址',
'保留地址',
'保留地址',
'保留地址',
'保留地址',
'保留地址',
]);
$time = microtime(TRUE);
$texts = '';
foreach ($datas AS $data)
{
$texts .= implode("\t", $data) . "\r\n";
}
$t1 = microtime(TRUE) - $time;
var_dump($t1 < $t1_max);
$t = microtime(TRUE) - $time;
var_dump($t < $t_max);
?>
+++DONE+++
--EXPECT--
bool(true)
bool(true)
+++DONE+++
@@ -0,0 +1,15 @@
--TEST--
Constexpr arrays should be able to handle resource keys
--FILE--
<?php
const FOO = [STDIN => 42];
var_dump(FOO);
?>
--EXPECTF--
Notice: Resource ID#%d used as offset, casting to integer (%d) in %s on line %d
array(1) {
[%d]=>
int(42)
}
@@ -1,5 +1,7 @@
--TEST--
Testing __debugInfo() magic method with bad returns RESOURCE
--INI--
allow_url_fopen=1
--FILE--
<?php
+10
View File
@@ -0,0 +1,10 @@
--TEST--
Use of non-literals in declare ticks values crashes compiler
--FILE--
<?php
declare(ticks = UNKNOWN_CONST) {
echo 'Done';
}
--EXPECTF--
Fatal error: declare(ticks) value must be a literal in %sdeclare_006.php on line 2
@@ -0,0 +1,39 @@
--TEST--
When performing a dynamic call to a ret-by-ref function, the reference should be unwrapped
--FILE--
<?php
namespace Foo;
function &retRef($x) {
return $x;
}
var_dump(call_user_func('Foo\retRef', 42));
var_dump(call_user_func_array('Foo\retRef', [42]));
$closure = function &($x) {
return $x;
};
var_dump($closure->call(new class {}, 42));
var_dump((new \ReflectionFunction('Foo\retRef'))->invoke(42));
var_dump((new \ReflectionFunction('Foo\retRef'))->invokeArgs([42]));
class Bar {
function &method($x) {
return $x;
}
}
var_dump((new \ReflectionMethod('Foo\Bar', 'method'))->invoke(new Bar, 42));
var_dump((new \ReflectionMethod('Foo\Bar', 'method'))->invokeArgs(new Bar, [42]));
?>
--EXPECT--
int(42)
int(42)
int(42)
int(42)
int(42)
int(42)
int(42)
+2
View File
@@ -1,5 +1,7 @@
--TEST--
GC 033: Crash in GC while run with phpspec
--INI--
zend.enable_gc = 1
--FILE--
<?php
$a = new stdClass();
+2
View File
@@ -1,5 +1,7 @@
--TEST--
GC 035: Lost inner-cycles garbage
--INI--
zend.enable_gc = 1
--FILE--
<?php
class A {
+23
View File
@@ -0,0 +1,23 @@
--TEST--
Bug #74157 (Segfault with nested generators)
--FILE--
<?php
function a() {
$a = $b = $c = 2;
foreach(range(1, 5) as $v) {
yield $v;
}
return;
}
foreach (a(range(1, 3)) as $a) {
var_dump($a);
}
?>
--EXPECTF--
int(1)
int(2)
int(3)
int(4)
int(5)
@@ -1,5 +1,7 @@
--TEST--
Verify yield from on generators being properly cycle collected
--INI--
zend.enable_gc = 1
--FILE--
<?php
@@ -0,0 +1,24 @@
--TEST--
Calling generator through magic __call()
--FILE--
<?php
class A {
public function __call($name, $args) {
for ($i = 0; $i < 5; $i++) {
yield $i;
}
}
}
$a = new A();
foreach ($a->gen() as $n) {
var_dump($n);
}
$a->gen();
?>
--EXPECT--
int(0)
int(1)
int(2)
int(3)
int(4)
@@ -0,0 +1,24 @@
--TEST--
yield from parses too greedily
--FILE--
<?php
function from1234($x) {
return $x;
}
function bar() {
yield 24;
}
function foo() {
yield from1234(42);
yield from(bar());
}
foreach (foo() as $value) {
var_dump($value);
}
--EXPECT--
int(42)
int(24)
+4 -3
View File
@@ -3,7 +3,7 @@ Test get_defined_functions() function : error conditions
--FILE--
<?php
/* Prototype : array get_defined_functions ( void )
/* Prototype : array get_defined_functions ( $exclude_disabled = false )
* Description: Gets an array of all defined functions.
* Source code: Zend/zend_builtin_functions.c
*/
@@ -14,7 +14,8 @@ echo "*** Testing get_defined_functions() : error conditions ***\n";
echo "\n-- Testing get_defined_functions() function with more than expected no. of arguments --\n";
$extra_arg = 10;
var_dump( get_defined_functions($extra_arg) );
$extra_arg2 = 20;
var_dump( get_defined_functions($extra_arg, $extra_arg2) );
?>
===Done===
@@ -23,7 +24,7 @@ var_dump( get_defined_functions($extra_arg) );
-- Testing get_defined_functions() function with more than expected no. of arguments --
Warning: get_defined_functions() expects exactly 0 parameters, 1 given in %s on line %d
Warning: get_defined_functions() expects at most 1 parameter, 2 given in %s on line %d
NULL
===Done===
+11
View File
@@ -0,0 +1,11 @@
--TEST--
Cannot use empty elements in keyed array destructuring
--FILE--
<?php
$array = ['a' => 1, 'b' => 2];
['a' => $a, , 'b' => $b] = $array;
?>
--EXPECTF--
Fatal error: Cannot use empty array entries in keyed array assignment in %s on line %d
+47
View File
@@ -0,0 +1,47 @@
--TEST--
Test edge-cases for negative num strings in interpolated string offsets
--FILE--
<?php
$a = [
"0" => 1,
"-0" => 2,
"1" => 3,
"-1" => 4,
"0x0" => 5,
"-0x0" => 6,
"00" => 7,
"-00" => 8,
"9223372036854775808" => 9,
"-9223372036854775808" => 10,
"2147483648" => 11,
"-2147483648" => 12,
];
var_dump("$a[0]");
var_dump("$a[-0]");
var_dump("$a[1]");
var_dump("$a[-1]");
var_dump("$a[0x0]");
var_dump("$a[-0x0]");
var_dump("$a[00]");
var_dump("$a[-00]");
var_dump("$a[9223372036854775808]");
var_dump("$a[-9223372036854775808]");
var_dump("$a[2147483648]");
var_dump("$a[-2147483648]");
?>
--EXPECT--
string(1) "1"
string(1) "2"
string(1) "3"
string(1) "4"
string(1) "5"
string(1) "6"
string(1) "7"
string(1) "8"
string(1) "9"
string(2) "10"
string(2) "11"
string(2) "12"
+10
View File
@@ -6,6 +6,8 @@ ANDing strings
$s = "123";
$s1 = "test";
$s2 = "45345some";
$s3 = str_repeat("f", 1);
$s4 = str_repeat("f", 2);
$s &= 22;
var_dump($s);
@@ -16,6 +18,12 @@ var_dump($s1);
$s2 &= 33;
var_dump($s2);
$s3 &= " ";
var_dump($s3);
$s4 &= " ";
var_dump($s4);
echo "Done\n";
?>
--EXPECTF--
@@ -26,4 +34,6 @@ int(0)
Notice: A non well formed numeric value encountered in %s on line %d
int(33)
string(1) " "
string(2) " "
Done
+10
View File
@@ -6,6 +6,8 @@ ORing strings
$s = "123";
$s1 = "test";
$s2 = "45345some";
$s3 = str_repeat("f", 1);
$s4 = str_repeat("f", 2);
$s |= 22;
var_dump($s);
@@ -16,6 +18,12 @@ var_dump($s1);
$s2 |= 33;
var_dump($s2);
$s3 |= " ";
var_dump($s3);
$s4 |= " ";
var_dump($s4);
echo "Done\n";
?>
--EXPECTF--
@@ -26,4 +34,6 @@ int(11)
Notice: A non well formed numeric value encountered in %s on line %d
int(45345)
string(1) "f"
string(2) "ff"
Done
+10
View File
@@ -6,6 +6,8 @@ XORing strings
$s = "123";
$s1 = "test";
$s2 = "45345some";
$s3 = str_repeat("f", 1);
$s4 = str_repeat("f", 2);
$s ^= 22;
var_dump($s);
@@ -16,6 +18,12 @@ var_dump($s1);
$s2 ^= 33;
var_dump($s2);
$s3 ^= " ";
var_dump($s3);
$s4 ^= " ";
var_dump($s4);
echo "Done\n";
?>
--EXPECTF--
@@ -26,4 +34,6 @@ int(11)
Notice: A non well formed numeric value encountered in %s on line %d
int(45312)
string(1) "F"
string(2) "FF"
Done
+20
View File
@@ -0,0 +1,20 @@
--TEST--
Bug #69579 (Internal trait double-free)
--SKIPIF--
<?php
if (!PHP_DEBUG) die("skip only run in debug version");
?>
--FILE--
<?php
class Bar{
use _ZendTestTrait;
}
$bar = new Bar();
var_dump($bar->testMethod());
// destruction causes a double-free and explodes
?>
--EXPECT--
bool(true)
@@ -12,8 +12,8 @@ final class e { }
var_dump(get_declared_traits());
?>
--EXPECT--
array(1) {
[0]=>
--EXPECTF--
array(%d) {%A
[%d]=>
string(1) "c"
}
@@ -13,8 +13,8 @@ namespace test {
}
?>
--EXPECT--
array(1) {
[0]=>
--EXPECTF--
array(%d) {%A
[%d]=>
string(6) "test\c"
}
@@ -13,13 +13,15 @@ var_dump(get_declared_traits());
?>
--EXPECTF--
%astring(1) "a"
array(%d) {%A
[%d]=>
string(1) "a"
[%d]=>
string(1) "d"
[%d]=>
string(1) "e"
}
array(1) {
[0]=>
array(%d) {%A
[%d]=>
string(1) "c"
}
+77
View File
@@ -0,0 +1,77 @@
--TEST--
Bug #74444 (multiple catch freezes in some cases)
--FILE--
<?php
function foo()
{
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '';
try {
throw new \RuntimeException();
} catch (\FooEx | \RuntimeException $e) {
echo 1;
}
echo 2;
}
foo();
--EXPECT--
12
@@ -0,0 +1,15 @@
--TEST--
"use function" should not conflict with class names
--FILE--
<?php
namespace Foo;
class Bar {}
use function bar;
?>
===DONE===
--EXPECT--
===DONE===
+12
View File
@@ -0,0 +1,12 @@
--TEST--
Use conflicts should not occur across files
--FILE--
<?php
require __DIR__ . '/use_no_file_conflict_1.inc';
require __DIR__ . '/use_no_file_conflict_2.inc';
?>
===DONE===
--EXPECT--
===DONE===
+4
View File
@@ -0,0 +1,4 @@
<?php
namespace Foo;
class A {}
+4
View File
@@ -0,0 +1,4 @@
<?php
namespace Foo;
use A;
+18 -6
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2016 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2017 Zend Technologies Ltd. (http://www.zend.com) |
+----------------------------------------------------------------------+
| This source file is subject to version 2.00 of the Zend license, |
| that is bundled with this package in the file LICENSE, and is |
@@ -152,11 +152,12 @@ ZEND_TSRMLS_CACHE_DEFINE()
#endif
ZEND_API zend_utility_values zend_uv;
ZEND_API zend_bool zend_dtrace_enabled;
/* version information */
static char *zend_version_info;
static uint zend_version_info_length;
#define ZEND_CORE_VERSION_INFO "Zend Engine v" ZEND_VERSION ", Copyright (c) 1998-2016 Zend Technologies\n"
#define ZEND_CORE_VERSION_INFO "Zend Engine v" ZEND_VERSION ", Copyright (c) 1998-2017 Zend Technologies\n"
#define PRINT_ZVAL_INDENT 4
static void zend_print_zval_r_to_buf(smart_str *buf, zval *expr, int indent);
@@ -312,7 +313,6 @@ ZEND_API void zend_print_flat_zval_r(zval *expr) /* {{{ */
static void zend_print_zval_r_to_buf(smart_str *buf, zval *expr, int indent) /* {{{ */
{
ZVAL_DEREF(expr);
switch (Z_TYPE_P(expr)) {
case IS_ARRAY:
smart_str_appends(buf, "Array\n");
@@ -580,6 +580,7 @@ static void executor_globals_ctor(zend_executor_globals *executor_globals) /* {{
#ifdef ZEND_WIN32
zend_get_windows_version_info(&executor_globals->windows_version_info);
#endif
executor_globals->valid_symbol_table = 0;
}
/* }}} */
@@ -693,9 +694,20 @@ int zend_startup(zend_utility_functions *utility_functions, char **extensions) /
#if HAVE_DTRACE
/* build with dtrace support */
zend_compile_file = dtrace_compile_file;
zend_execute_ex = dtrace_execute_ex;
zend_execute_internal = dtrace_execute_internal;
{
char *tmp = getenv("USE_ZEND_DTRACE");
if (tmp && zend_atoi(tmp, 0)) {
zend_dtrace_enabled = 1;
zend_compile_file = dtrace_compile_file;
zend_execute_ex = dtrace_execute_ex;
zend_execute_internal = dtrace_execute_internal;
} else {
zend_compile_file = compile_file;
zend_execute_ex = execute_ex;
zend_execute_internal = NULL;
}
}
#else
zend_compile_file = compile_file;
zend_execute_ex = execute_ex;
+4 -2
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2016 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2017 Zend Technologies Ltd. (http://www.zend.com) |
+----------------------------------------------------------------------+
| This source file is subject to version 2.00 of the Zend license, |
| that is bundled with this package in the file LICENSE, and is |
@@ -22,7 +22,7 @@
#ifndef ZEND_H
#define ZEND_H
#define ZEND_VERSION "3.1.0-dev"
#define ZEND_VERSION "3.1.0"
#define ZEND_ENGINE_3
@@ -281,6 +281,8 @@ extern ZEND_API zend_class_entry *zend_standard_class_def;
extern ZEND_API zend_utility_values zend_uv;
extern ZEND_API zval zval_used_for_init;
/* If DTrace is available and enabled */
extern ZEND_API zend_bool zend_dtrace_enabled;
END_EXTERN_C()
#define ZEND_UV(name) (zend_uv.name)
+22 -4
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2016 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2017 Zend Technologies Ltd. (http://www.zend.com) |
+----------------------------------------------------------------------+
| This source file is subject to version 2.00 of the Zend license, |
| that is bundled with this package in the file LICENSE, and is |
@@ -1132,7 +1132,7 @@ ZEND_API int zend_update_class_constants(zend_class_entry *class_type) /* {{{ */
ZEND_HASH_FOREACH_PTR(&class_type->constants_table, c) {
val = &c->value;
if (Z_CONSTANT_P(val)) {
if (UNEXPECTED(zval_update_constant_ex(val, class_type) != SUCCESS)) {
if (UNEXPECTED(zval_update_constant_ex(val, c->ce) != SUCCESS)) {
return FAILURE;
}
}
@@ -1855,7 +1855,7 @@ static int zend_startup_module_zval(zval *zv) /* {{{ */
{
zend_module_entry *module = Z_PTR_P(zv);
return zend_startup_module_ex(module);
return (zend_startup_module_ex(module) == SUCCESS) ? ZEND_HASH_APPLY_KEEP : ZEND_HASH_APPLY_REMOVE;
}
/* }}} */
@@ -2158,7 +2158,7 @@ ZEND_API int zend_register_functions(zend_class_entry *scope, const zend_functio
internal_function->prototype = NULL;
if (ptr->flags) {
if (!(ptr->flags & ZEND_ACC_PPP_MASK)) {
if (ptr->flags != ZEND_ACC_DEPRECATED || scope) {
if (ptr->flags != ZEND_ACC_DEPRECATED && scope) {
zend_error(error_type, "Invalid access level for %s%s%s() - access must be exactly one of public, protected or private", scope ? ZSTR_VAL(scope->name) : "", scope ? "::" : "", ptr->fname);
}
internal_function->fn_flags = ZEND_ACC_PUBLIC | ptr->flags;
@@ -3886,6 +3886,24 @@ ZEND_API void zend_update_property_null(zend_class_entry *scope, zval *object, c
}
/* }}} */
ZEND_API void zend_unset_property(zend_class_entry *scope, zval *object, const char *name, size_t name_length) /* {{{ */
{
zval property;
zend_class_entry *old_scope = EG(fake_scope);
EG(fake_scope) = scope;
if (!Z_OBJ_HT_P(object)->unset_property) {
zend_error_noreturn(E_CORE_ERROR, "Property %s of class %s cannot be unset", name, ZSTR_VAL(Z_OBJCE_P(object)->name));
}
ZVAL_STRINGL(&property, name, name_length);
Z_OBJ_HT_P(object)->unset_property(object, &property, 0);
zval_ptr_dtor(&property);
EG(fake_scope) = old_scope;
}
/* }}} */
ZEND_API void zend_update_property_bool(zend_class_entry *scope, zval *object, const char *name, size_t name_length, zend_long value) /* {{{ */
{
zval tmp;
+2 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2016 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2017 Zend Technologies Ltd. (http://www.zend.com) |
+----------------------------------------------------------------------+
| This source file is subject to version 2.00 of the Zend license, |
| that is bundled with this package in the file LICENSE, and is |
@@ -346,6 +346,7 @@ ZEND_API void zend_update_property_double(zend_class_entry *scope, zval *object,
ZEND_API void zend_update_property_str(zend_class_entry *scope, zval *object, const char *name, size_t name_length, zend_string *value);
ZEND_API void zend_update_property_string(zend_class_entry *scope, zval *object, const char *name, size_t name_length, const char *value);
ZEND_API void zend_update_property_stringl(zend_class_entry *scope, zval *object, const char *name, size_t name_length, const char *value, size_t value_length);
ZEND_API void zend_unset_property(zend_class_entry *scope, zval *object, const char *name, size_t name_length);
ZEND_API int zend_update_static_property(zend_class_entry *scope, const char *name, size_t name_length, zval *value);
ZEND_API int zend_update_static_property_null(zend_class_entry *scope, const char *name, size_t name_length);
+23 -25
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2016 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2017 Zend Technologies Ltd. (http://www.zend.com) |
+----------------------------------------------------------------------+
| This source file is subject to version 2.00 of the Zend license, |
| that is bundled with this package in the file LICENSE, and is |
@@ -851,6 +851,7 @@ static void *zend_mm_alloc_pages(zend_mm_heap *heap, uint32_t pages_count ZEND_F
{
zend_mm_chunk *chunk = heap->main_chunk;
uint32_t page_num, len;
int steps = 0;
while (1) {
if (UNEXPECTED(chunk->free_pages < pages_count)) {
@@ -1027,10 +1028,20 @@ get_chunk:
goto found;
} else {
chunk = chunk->next;
steps++;
}
}
found:
if (steps > 2 && pages_count < 8) {
/* move chunk into the head of the linked-list */
chunk->prev->next = chunk->next;
chunk->next->prev = chunk->prev;
chunk->next = heap->main_chunk->next;
chunk->prev = heap->main_chunk;
chunk->prev->next = chunk;
chunk->next->prev = chunk;
}
/* mark run as allocated */
chunk->free_pages -= pages_count;
zend_mm_bitset_set_range(chunk->free_map, page_num, pages_count);
@@ -1427,7 +1438,7 @@ static void *zend_mm_realloc_heap(zend_mm_heap *heap, void *ptr, size_t size, si
#endif
#ifdef ZEND_WIN32
/* On Windows we don't have ability to extend huge blocks in-place.
* We allocate them with 2MB size granularity, to avoid many
* We allocate them with 2MB size granularity, to avoid many
* reallocations when they are extended by small pieces
*/
new_size = ZEND_MM_ALIGNED_SIZE_EX(size, MAX(REAL_PAGE_SIZE, ZEND_MM_CHUNK_SIZE));
@@ -1695,7 +1706,7 @@ static void *zend_mm_alloc_huge(zend_mm_heap *heap, size_t size ZEND_FILE_LINE_D
{
#ifdef ZEND_WIN32
/* On Windows we don't have ability to extend huge blocks in-place.
* We allocate them with 2MB size granularity, to avoid many
* We allocate them with 2MB size granularity, to avoid many
* reallocations when they are extended by small pieces
*/
size_t new_size = ZEND_MM_ALIGNED_SIZE_EX(size, MAX(REAL_PAGE_SIZE, ZEND_MM_CHUNK_SIZE));
@@ -2288,7 +2299,7 @@ ZEND_API int is_zend_mm(void)
#endif
}
#if !ZEND_DEBUG && (!defined(_WIN32) || defined(__clang__))
#if !ZEND_DEBUG && defined(HAVE_BUILTIN_CONSTANT_P)
#undef _emalloc
#if ZEND_MM_CUSTOM
@@ -2456,37 +2467,24 @@ ZEND_API size_t ZEND_FASTCALL _zend_mem_block_size(void *ptr ZEND_FILE_LINE_DC Z
return zend_mm_size(AG(mm_heap), ptr ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_ORIG_RELAY_CC);
}
static zend_always_inline size_t safe_address(size_t nmemb, size_t size, size_t offset)
{
int overflow;
size_t ret = zend_safe_address(nmemb, size, offset, &overflow);
if (UNEXPECTED(overflow)) {
zend_error_noreturn(E_ERROR, "Possible integer overflow in memory allocation (%zu * %zu + %zu)", nmemb, size, offset);
return 0;
}
return ret;
}
ZEND_API void* ZEND_FASTCALL _safe_emalloc(size_t nmemb, size_t size, size_t offset ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC)
{
return emalloc_rel(safe_address(nmemb, size, offset));
return emalloc_rel(zend_safe_address_guarded(nmemb, size, offset));
}
ZEND_API void* ZEND_FASTCALL _safe_malloc(size_t nmemb, size_t size, size_t offset)
{
return pemalloc(safe_address(nmemb, size, offset), 1);
return pemalloc(zend_safe_address_guarded(nmemb, size, offset), 1);
}
ZEND_API void* ZEND_FASTCALL _safe_erealloc(void *ptr, size_t nmemb, size_t size, size_t offset ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC)
{
return erealloc_rel(ptr, safe_address(nmemb, size, offset));
return erealloc_rel(ptr, zend_safe_address_guarded(nmemb, size, offset));
}
ZEND_API void* ZEND_FASTCALL _safe_realloc(void *ptr, size_t nmemb, size_t size, size_t offset)
{
return perealloc(ptr, safe_address(nmemb, size, offset), 1);
return perealloc(ptr, zend_safe_address_guarded(nmemb, size, offset), 1);
}
@@ -2602,9 +2600,9 @@ static void alloc_globals_ctor(zend_alloc_globals *alloc_globals)
alloc_globals->mm_heap = malloc(sizeof(zend_mm_heap));
memset(alloc_globals->mm_heap, 0, sizeof(zend_mm_heap));
alloc_globals->mm_heap->use_custom_heap = ZEND_MM_CUSTOM_HEAP_STD;
alloc_globals->mm_heap->custom_heap.std._malloc = malloc;
alloc_globals->mm_heap->custom_heap.std._malloc = __zend_malloc;
alloc_globals->mm_heap->custom_heap.std._free = free;
alloc_globals->mm_heap->custom_heap.std._realloc = realloc;
alloc_globals->mm_heap->custom_heap.std._realloc = __zend_realloc;
return;
}
#endif
@@ -2820,7 +2818,7 @@ static ZEND_COLD ZEND_NORETURN void zend_out_of_memory(void)
ZEND_API void * __zend_malloc(size_t len)
{
void *tmp = malloc(len);
if (EXPECTED(tmp)) {
if (EXPECTED(tmp || !len)) {
return tmp;
}
zend_out_of_memory();
@@ -2836,7 +2834,7 @@ ZEND_API void * __zend_calloc(size_t nmemb, size_t len)
ZEND_API void * __zend_realloc(void *p, size_t len)
{
p = realloc(p, len);
if (EXPECTED(p)) {
if (EXPECTED(p || !len)) {
return p;
}
zend_out_of_memory();
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2016 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2017 Zend Technologies Ltd. (http://www.zend.com) |
+----------------------------------------------------------------------+
| This source file is subject to version 2.00 of the Zend license, |
| that is bundled with this package in the file LICENSE, and is |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2016 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2017 Zend Technologies Ltd. (http://www.zend.com) |
+----------------------------------------------------------------------+
| This source file is subject to version 2.00 of the Zend license, |
| that is bundled with this package in the file LICENSE, and is |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2016 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2017 Zend Technologies Ltd. (http://www.zend.com) |
+----------------------------------------------------------------------+
| This source file is subject to version 2.00 of the Zend license, |
| that is bundled with this package in the file LICENSE, and is |
+25 -6
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2016 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2017 Zend Technologies Ltd. (http://www.zend.com) |
+----------------------------------------------------------------------+
| This source file is subject to version 2.00 of the Zend license, |
| that is bundled with this package in the file LICENSE, and is |
@@ -57,17 +57,21 @@ ZEND_API zend_ast *zend_ast_create_znode(znode *node) {
return (zend_ast *) ast;
}
ZEND_API zend_ast *zend_ast_create_zval_ex(zval *zv, zend_ast_attr attr) {
ZEND_API zend_ast *zend_ast_create_zval_with_lineno(zval *zv, zend_ast_attr attr, uint32_t lineno) {
zend_ast_zval *ast;
ast = zend_ast_alloc(sizeof(zend_ast_zval));
ast->kind = ZEND_AST_ZVAL;
ast->attr = attr;
ZVAL_COPY_VALUE(&ast->val, zv);
ast->val.u2.lineno = CG(zend_lineno);
ast->val.u2.lineno = lineno;
return (zend_ast *) ast;
}
ZEND_API zend_ast *zend_ast_create_zval_ex(zval *zv, zend_ast_attr attr) {
return zend_ast_create_zval_with_lineno(zv, attr, CG(zend_lineno));
}
ZEND_API zend_ast *zend_ast_create_decl(
zend_ast_kind kind, uint32_t flags, uint32_t start_lineno, zend_string *doc_comment,
zend_string *name, zend_ast *child0, zend_ast *child1, zend_ast *child2, zend_ast *child3
@@ -155,7 +159,14 @@ ZEND_API zend_ast *zend_ast_create_list(uint32_t init_children, zend_ast_kind ki
uint32_t i;
va_start(va, kind);
for (i = 0; i < init_children; ++i) {
ast = zend_ast_list_add(ast, va_arg(va, zend_ast *));
zend_ast *child = va_arg(va, zend_ast *);
ast = zend_ast_list_add(ast, child);
if (child != NULL) {
uint32_t lineno = zend_ast_get_lineno(child);
if (lineno < ast->lineno) {
ast->lineno = lineno;
}
}
}
va_end(va);
}
@@ -181,7 +192,11 @@ static int zend_ast_add_array_element(zval *result, zval *offset, zval *expr)
{
switch (Z_TYPE_P(offset)) {
case IS_UNDEF:
zend_hash_next_index_insert(Z_ARRVAL_P(result), expr);
if (!zend_hash_next_index_insert(Z_ARRVAL_P(result), expr)) {
zend_error(E_WARNING,
"Cannot add element to the array as the next element is already occupied");
zval_ptr_dtor(expr);
}
break;
case IS_STRING:
zend_symtable_update(Z_ARRVAL_P(result), Z_STR_P(offset), expr);
@@ -202,6 +217,10 @@ static int zend_ast_add_array_element(zval *result, zval *offset, zval *expr)
case IS_DOUBLE:
zend_hash_index_update(Z_ARRVAL_P(result), zend_dval_to_lval(Z_DVAL_P(offset)), expr);
break;
case IS_RESOURCE:
zend_error(E_NOTICE, "Resource ID#%d used as offset, casting to integer (%d)", Z_RES_HANDLE_P(offset), Z_RES_HANDLE_P(offset));
zend_hash_index_update(Z_ARRVAL_P(result), Z_RES_HANDLE_P(offset), expr);
break;
default:
zend_throw_error(NULL, "Illegal offset type");
return FAILURE;
@@ -1334,7 +1353,7 @@ simple_list:
case ZEND_ASSIGN_BW_OR: BINARY_OP(" |= ", 90, 91, 90);
case ZEND_ASSIGN_BW_AND: BINARY_OP(" &= ", 90, 91, 90);
case ZEND_ASSIGN_BW_XOR: BINARY_OP(" ^= ", 90, 91, 90);
case ZEND_POW: BINARY_OP(" **= ", 90, 91, 90);
case ZEND_ASSIGN_POW: BINARY_OP(" **= ", 90, 91, 90);
EMPTY_SWITCH_DEFAULT_CASE();
}
break;
+2 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2016 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2017 Zend Technologies Ltd. (http://www.zend.com) |
+----------------------------------------------------------------------+
| This source file is subject to version 2.00 of the Zend license, |
| that is bundled with this package in the file LICENSE, and is |
@@ -189,6 +189,7 @@ typedef struct _zend_ast_decl {
typedef void (*zend_ast_process_t)(zend_ast *ast);
extern ZEND_API zend_ast_process_t zend_ast_process;
ZEND_API zend_ast *zend_ast_create_zval_with_lineno(zval *zv, zend_ast_attr attr, uint32_t lineno);
ZEND_API zend_ast *zend_ast_create_zval_ex(zval *zv, zend_ast_attr attr);
ZEND_API zend_ast *zend_ast_create_ex(zend_ast_kind kind, zend_ast_attr attr, ...);
+2 -2
View File
@@ -56,14 +56,14 @@ static zend_always_inline int zend_ulong_ntz(zend_ulong num)
if (!BitScanForward(&index, num)) {
#endif
/* undefined behavior */
return 32;
return SIZEOF_ZEND_LONG * 8;
}
return (int) index;
#else
int n;
if (num == Z_UL(0)) return ZEND_MM_BITSET_LEN;
if (num == Z_UL(0)) return SIZEOF_ZEND_LONG * 8;
n = 1;
#if SIZEOF_ZEND_LONG == 8
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2016 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2017 Zend Technologies Ltd. (http://www.zend.com) |
+----------------------------------------------------------------------+
| This source file is subject to version 2.00 of the Zend license, |
| that is bundled with this package in the file LICENSE, and is |
+83 -23
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2016 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2017 Zend Technologies Ltd. (http://www.zend.com) |
+----------------------------------------------------------------------+
| This source file is subject to version 2.00 of the Zend license, |
| that is bundled with this package in the file LICENSE, and is |
@@ -34,6 +34,7 @@
#if ZEND_DEBUG
static zend_class_entry *zend_test_interface;
static zend_class_entry *zend_test_class;
static zend_class_entry *zend_test_trait;
static zend_object_handlers zend_test_class_handlers;
#endif
@@ -306,6 +307,16 @@ static int zend_test_class_call_method(zend_string *method, zend_object *object,
return 0;
}
/* }}} */
static ZEND_METHOD(_ZendTestTrait, testMethod) /* {{{ */ {
RETURN_TRUE;
}
/* }}} */
static zend_function_entry zend_test_trait_methods[] = {
ZEND_ME(_ZendTestTrait, testMethod, arginfo_zend__void, ZEND_ACC_PUBLIC)
ZEND_FE_END
};
#endif
static const zend_function_entry builtin_functions[] = { /* {{{ */
@@ -403,6 +414,11 @@ ZEND_MINIT_FUNCTION(core) { /* {{{ */
memcpy(&zend_test_class_handlers, zend_get_std_object_handlers(), sizeof(zend_object_handlers));
zend_test_class_handlers.get_method = zend_test_class_method_get;
zend_test_class_handlers.call_method = zend_test_class_call_method;
INIT_CLASS_ENTRY(class_entry, "_ZendTestTrait", zend_test_trait_methods);
zend_test_trait = zend_register_internal_class(&class_entry);
zend_test_trait->ce_flags |= ZEND_ACC_TRAIT;
zend_declare_property_null(zend_test_trait, "testProp", sizeof("testProp")-1, ZEND_ACC_PUBLIC);
#endif
return SUCCESS;
@@ -863,9 +879,6 @@ static void copy_constant_array(zval *dst, zval *src) /* {{{ */
}
} else if (Z_REFCOUNTED_P(val)) {
Z_ADDREF_P(val);
if (UNEXPECTED(Z_TYPE_INFO_P(val) == IS_RESOURCE_EX)) {
Z_TYPE_INFO_P(new_val) &= ~(IS_TYPE_REFCOUNTED << Z_TYPE_FLAGS_SHIFT);
}
}
} ZEND_HASH_FOREACH_END();
}
@@ -908,12 +921,7 @@ repeat:
case IS_FALSE:
case IS_TRUE:
case IS_NULL:
break;
case IS_RESOURCE:
ZVAL_COPY(&val_free, val);
/* TODO: better solution than this tricky disable dtor on resource? */
Z_TYPE_INFO(val_free) &= ~(IS_TYPE_REFCOUNTED << Z_TYPE_FLAGS_SHIFT);
val = &val_free;
break;
case IS_ARRAY:
if (!Z_IMMUTABLE_P(val)) {
@@ -1215,6 +1223,8 @@ ZEND_FUNCTION(get_object_vars)
HashTable *properties;
zend_string *key;
zend_object *zobj;
zend_ulong index;
zend_bool fast_copy = 0;
ZEND_PARSE_PARAMETERS_START(1, 1)
Z_PARAM_OBJECT(obj)
@@ -1233,7 +1243,17 @@ ZEND_FUNCTION(get_object_vars)
zobj = Z_OBJ_P(obj);
if (!zobj->ce->default_properties_count && properties == zobj->properties && !ZEND_HASH_GET_APPLY_COUNT(properties)) {
/* fast copy */
fast_copy = 1;
/* Check if the object has a numeric property, See Bug 73998 */
ZEND_HASH_FOREACH_STR_KEY(properties, key) {
if (key && ZEND_HANDLE_NUMERIC(key, index)) {
fast_copy = 0;
break;
}
} ZEND_HASH_FOREACH_END();
}
if (fast_copy) {
if (EXPECTED(zobj->handlers == &std_object_handlers)) {
if (EXPECTED(!(GC_FLAGS(properties) & IS_ARRAY_IMMUTABLE))) {
GC_REFCOUNT(properties)++;
@@ -1259,7 +1279,7 @@ ZEND_FUNCTION(get_object_vars)
zend_unmangle_property_name_ex(key, &class_name, &prop_name, &prop_len);
zend_hash_str_add_new(Z_ARRVAL_P(return_value), prop_name, prop_len, value);
} else {
zend_hash_add_new(Z_ARRVAL_P(return_value), key, value);
zend_symbtable_add_new(Z_ARRVAL_P(return_value), key, value);
}
}
}
@@ -1931,13 +1951,22 @@ static int copy_function_name(zval *zv, int num_args, va_list args, zend_hash_ke
zend_function *func = Z_PTR_P(zv);
zval *internal_ar = va_arg(args, zval *),
*user_ar = va_arg(args, zval *);
zend_bool *exclude_disabled = va_arg(args, zend_bool *);
if (hash_key->key == NULL || ZSTR_VAL(hash_key->key)[0] == 0) {
return 0;
}
if (func->type == ZEND_INTERNAL_FUNCTION) {
add_next_index_str(internal_ar, zend_string_copy(hash_key->key));
char *disable_functions = INI_STR("disable_functions");
if ((*exclude_disabled == 1) && (disable_functions != NULL)) {
if (strstr(disable_functions, func->common.function_name->val) == NULL) {
add_next_index_str(internal_ar, zend_string_copy(hash_key->key));
}
} else {
add_next_index_str(internal_ar, zend_string_copy(hash_key->key));
}
} else if (func->type == ZEND_USER_FUNCTION) {
add_next_index_str(user_ar, zend_string_copy(hash_key->key));
}
@@ -1951,8 +1980,9 @@ static int copy_function_name(zval *zv, int num_args, va_list args, zend_hash_ke
ZEND_FUNCTION(get_defined_functions)
{
zval internal, user;
zend_bool exclude_disabled = 0;
if (zend_parse_parameters_none() == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS(), "|b", &exclude_disabled) == FAILURE) {
return;
}
@@ -1960,7 +1990,7 @@ ZEND_FUNCTION(get_defined_functions)
array_init(&user);
array_init(return_value);
zend_hash_apply_with_arguments(EG(function_table), copy_function_name, 2, &internal, &user);
zend_hash_apply_with_arguments(EG(function_table), copy_function_name, 3, &internal, &user, &exclude_disabled);
zend_hash_str_add_new(Z_ARRVAL_P(return_value), "internal", sizeof("internal")-1, &internal);
zend_hash_str_add_new(Z_ARRVAL_P(return_value), "user", sizeof("user")-1, &user);
@@ -2277,9 +2307,33 @@ static void debug_backtrace_get_args(zend_execute_data *call, zval *arg_array) /
zend_hash_real_init(Z_ARRVAL_P(arg_array), 1);
ZEND_HASH_FILL_PACKED(Z_ARRVAL_P(arg_array)) {
if (call->func->type == ZEND_USER_FUNCTION) {
uint32_t first_extra_arg = call->func->op_array.num_args;
uint32_t first_extra_arg = MIN(num_args, call->func->op_array.num_args);
if (ZEND_CALL_NUM_ARGS(call) > first_extra_arg) {
if (UNEXPECTED(ZEND_CALL_INFO(call) & ZEND_CALL_HAS_SYMBOL_TABLE)) {
/* In case of attached symbol_table, values on stack may be invalid
* and we have to access them through symbol_table
* See: https://bugs.php.net/bug.php?id=73156
*/
zend_string *arg_name;
zval *arg;
while (i < first_extra_arg) {
arg_name = call->func->op_array.vars[i];
arg = zend_hash_find_ind(call->symbol_table, arg_name);
if (arg) {
if (Z_OPT_REFCOUNTED_P(arg)) {
Z_ADDREF_P(arg);
}
n++;
ZEND_HASH_FILL_ADD(arg);
} else {
zval tmp;
ZVAL_UNDEF(&tmp);
ZEND_HASH_FILL_ADD(&tmp);
}
i++;
}
} else {
while (i < first_extra_arg) {
if (EXPECTED(Z_TYPE_INFO_P(p) != IS_UNDEF)) {
if (Z_OPT_REFCOUNTED_P(p)) {
@@ -2291,8 +2345,8 @@ static void debug_backtrace_get_args(zend_execute_data *call, zval *arg_array) /
p++;
i++;
}
p = ZEND_CALL_VAR_NUM(call, call->func->op_array.last_var + call->func->op_array.T);
}
p = ZEND_CALL_VAR_NUM(call, call->func->op_array.last_var + call->func->op_array.T);
}
while (i < num_args) {
@@ -2396,13 +2450,19 @@ ZEND_FUNCTION(debug_print_backtrace)
object = (Z_TYPE(call->This) == IS_OBJECT) ? Z_OBJ(call->This) : NULL;
if (call->func) {
zend_string *zend_function_name;
func = call->func;
function_name = (func->common.scope &&
func->common.scope->trait_aliases) ?
ZSTR_VAL(zend_resolve_method_name(
(object ? object->ce : func->common.scope), func)) :
(func->common.function_name ?
ZSTR_VAL(func->common.function_name) : NULL);
if (func->common.scope && func->common.scope->trait_aliases) {
zend_function_name = zend_resolve_method_name(object ? object->ce : func->common.scope, func);
} else {
zend_function_name = func->common.function_name;
}
if (zend_function_name != NULL) {
function_name = ZSTR_VAL(zend_function_name);
} else {
function_name = NULL;
}
} else {
func = NULL;
function_name = NULL;
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2016 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2017 Zend Technologies Ltd. (http://www.zend.com) |
+----------------------------------------------------------------------+
| This source file is subject to version 2.00 of the Zend license, |
| that is bundled with this package in the file LICENSE, and is |
+4 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2016 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2017 Zend Technologies Ltd. (http://www.zend.com) |
+----------------------------------------------------------------------+
| This source file is subject to version 2.00 of the Zend license, |
| that is bundled with this package in the file LICENSE, and is |
@@ -166,6 +166,9 @@ ZEND_METHOD(Closure, call)
}
if (zend_call_function(&fci, &fci_cache) == SUCCESS && Z_TYPE(closure_result) != IS_UNDEF) {
if (Z_ISREF(closure_result)) {
zend_unwrap_reference(&closure_result);
}
ZVAL_COPY_VALUE(return_value, &closure_result);
}
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2016 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2017 Zend Technologies Ltd. (http://www.zend.com) |
+----------------------------------------------------------------------+
| This source file is subject to version 2.00 of the Zend license, |
| that is bundled with this package in the file LICENSE, and is |
Loaded 100 of 1594 files, more files were not shown because too many files have changed in this diff. Show more