Compare commits

...
1259 Commits
Author SHA1 Message Date
Anatol Belski a36407215f set versions 2016-06-21 19:56:51 +02:00
Anatol Belski 5abfbc647d sync NEWS 2016-06-21 19:55:22 +02:00
Anatol Belski 305d93c7e5 fix two remaining tests 2016-06-21 19:10:57 +02:00
Anatol Belski b4d54923c5 fix test
There is a difference between TS and NTS warning message, since
virtual_mkdir vs glibc directly is used. This has no effect for
the actual fix functionality.
2016-06-21 19:10:37 +02:00
Anatol Belski 03106e8c5e re-fix leak 2016-06-21 19:10:02 +02:00
Remi Collet a21202a604 bump zip version 2016-06-21 13:30:48 +02:00
Anatol Belski 8fb3f06ef5 remove the huge test file, generate it on the fly instead 2016-06-21 10:04:39 +02:00
Stanislav Malyshev 2a65544f78 Merge branch 'PHP-5.6.23' into PHP-7.0.8
* PHP-5.6.23: (24 commits)
  iFixed bug #72446 - Integer Overflow in gdImagePaletteToTrueColor() resulting in heap overflow
  update NEWS
  fix tests
  fix build
  Fix bug #72455:  Heap Overflow due to integer overflows
  Fix bug #72434: ZipArchive class Use After Free Vulnerability in PHP's GC algorithm and unserialize
  Fixed ##72433: Use After Free Vulnerability in PHP's GC algorithm and unserialize
  Fix bug #72407: NULL Pointer Dereference at _gdScaleVert
  Fix bug #72402: _php_mb_regex_ereg_replace_exec - double free
  Fix bug #72298	pass2_no_dither out-of-bounds access
  Fixed #72339 Integer Overflow in _gd2GetHeader() resulting in heap overflow
  Fix bug #72262 - do not overflow int
  Fix bug #72400 and #72403 - prevent signed int overflows for string lengths
  Fix bug #72275: don't allow smart_str to overflow int
  Fix bug #72340: Double Free Courruption in wddx_deserialize
  update NEWS
  Fix #66387: Stack overflow with imagefilltoborder
  Fix bug #72321 - use efree() for emalloc allocation
  5.6.23RC1
  Fix bug #72140 (segfault after calling ERR_free_strings())
  ...

Conflicts:
	configure.in
	ext/mbstring/php_mbregex.c
	ext/mcrypt/mcrypt.c
	ext/spl/spl_array.c
	ext/spl/spl_directory.c
	ext/standard/php_smart_str.h
	ext/standard/string.c
	ext/standard/url.c
	ext/wddx/wddx.c
	ext/zip/php_zip.c
	main/php_version.h
2016-06-21 00:24:32 -07:00
Stanislav Malyshev 7dde353ee7 Merge branch 'PHP-5.5' into PHP-5.6.23
* PHP-5.5:
  Fixed bug #72446 - Integer Overflow in gdImagePaletteToTrueColor() resulting in heap overflow
  update NEWS
  fix tests
  fix build
  Fix bug #72455:  Heap Overflow due to integer overflows
  Fix bug #72434: ZipArchive class Use After Free Vulnerability in PHP's GC algorithm and unserialize
  Fixed ##72433: Use After Free Vulnerability in PHP's GC algorithm and unserialize
  Fix bug #72407: NULL Pointer Dereference at _gdScaleVert
  Fix bug #72402: _php_mb_regex_ereg_replace_exec - double free
  Fix bug #72298	pass2_no_dither out-of-bounds access
  Fixed #72339 Integer Overflow in _gd2GetHeader() resulting in heap overflow
  Fix bug #72262 - do not overflow int
  Fix bug #72400 and #72403 - prevent signed int overflows for string lengths
  Fix bug #72275: don't allow smart_str to overflow int
  Fix bug #72340: Double Free Courruption in wddx_deserialize
  update NEWS
  Fix #66387: Stack overflow with imagefilltoborder
  Skip test which is 64bits only
  5.5.37 now

Conflicts:
	configure.in
	ext/mcrypt/mcrypt.c
	ext/spl/spl_directory.c
	main/php_version.h
2016-06-21 00:01:48 -07:00
Stanislav Malyshev c395c6e5d7 iFixed bug #72446 - Integer Overflow in gdImagePaletteToTrueColor() resulting in heap overflow 2016-06-20 23:58:26 -07:00
Stanislav Malyshev b028cacf31 update NEWS 2016-06-20 23:45:37 -07:00
Stanislav Malyshev e1d2f86a41 Merge branch 'PHP-5.5.37' into PHP-5.5
* PHP-5.5.37:
  fix tests
  fix build
  Fix bug #72455:  Heap Overflow due to integer overflows
  Fix bug #72434: ZipArchive class Use After Free Vulnerability in PHP's GC algorithm and unserialize
  Fixed ##72433: Use After Free Vulnerability in PHP's GC algorithm and unserialize
  Fix bug #72407: NULL Pointer Dereference at _gdScaleVert
  Fix bug #72402: _php_mb_regex_ereg_replace_exec - double free
  Fix bug #72298	pass2_no_dither out-of-bounds access
  Fixed #72339 Integer Overflow in _gd2GetHeader() resulting in heap overflow
  Fix bug #72262 - do not overflow int
  Fix bug #72400 and #72403 - prevent signed int overflows for string lengths
  Fix bug #72275: don't allow smart_str to overflow int
  Fix bug #72340: Double Free Courruption in wddx_deserialize
2016-06-20 23:31:54 -07:00
Stanislav Malyshev 5f107ab8a6 fix tests 2016-06-20 22:54:55 -07:00
Stanislav Malyshev 7f428cae88 fix build 2016-06-20 22:13:31 -07:00
Stanislav Malyshev 6c5211a0ce Fix bug #72455: Heap Overflow due to integer overflows 2016-06-20 21:51:42 -07:00
Stanislav Malyshev f6aef68089 Fix bug #72434: ZipArchive class Use After Free Vulnerability in PHP's GC algorithm and unserialize 2016-06-20 21:35:22 -07:00
Stanislav Malyshev 3f627e580a Fixed ##72433: Use After Free Vulnerability in PHP's GC algorithm and unserialize 2016-06-20 21:26:33 -07:00
Stanislav Malyshev b9ec171e7d Fix bug #72407: NULL Pointer Dereference at _gdScaleVert 2016-06-18 21:57:25 -07:00
Stanislav Malyshev 5b597a2e5b Fix bug #72402: _php_mb_regex_ereg_replace_exec - double free 2016-06-18 21:48:39 -07:00
Stanislav Malyshev e9ac8954be Fix bug #72298 pass2_no_dither out-of-bounds access 2016-06-18 21:06:09 -07:00
Pierre Joye 7722455726 Fixed #72339 Integer Overflow in _gd2GetHeader() resulting in heap overflow 2016-06-18 20:15:10 +02:00
Stanislav Malyshev 7245bff300 Fix bug #72262 - do not overflow int 2016-06-15 21:58:26 -07:00
Stanislav Malyshev 88746d60ab Fix bug #72400 and #72403 - prevent signed int overflows for string lengths 2016-06-15 21:51:28 -07:00
Stanislav Malyshev 489fd56fe3 Fix bug #72275: don't allow smart_str to overflow int 2016-06-14 00:02:17 -07:00
Stanislav Malyshev a44c89e8af Fix bug #72340: Double Free Courruption in wddx_deserialize 2016-06-12 23:18:23 -07:00
Anatol Belski 6f73079ce1 update NEWS 2016-06-13 08:12:22 +02:00
Christoph M. Becker f96ebb0986 Fix #66387: Stack overflow with imagefilltoborder
The stack overflow is caused by the recursive algorithm in combination with a
very large negative coordinate passed to gdImageFillToBorder(). As there is
already a clipping for large positive coordinates to the width and height of
the image, it seems to be consequent to clip to zero also.
2016-06-13 08:10:36 +02:00
Stanislav Malyshev d144590d38 Fix bug #72321 - use efree() for emalloc allocation 2016-06-12 21:35:13 -07:00
Ferenc Kovacs 0307315769 5.6.23RC1 2016-06-09 10:54:35 +02:00
Jakub Zelenka 05033c9ebd Fix bug #72140 (segfault after calling ERR_free_strings()) 2016-06-08 18:21:39 +01:00
Pierre Joye 6d3fa654b7 prevent invalid color index (palette only), may lead to crash 2016-06-08 11:06:48 +07:00
Lior Kaplan 62f9d1e3ae Add CVE to #66387 2016-06-07 21:45:24 +03:00
Anatol Belski 18f30d702c fix NEWS 2016-06-07 18:53:18 +02:00
Anatol Belski 3473406b2a Merge branch 'PHP-7.0' into PHP-7.0.8
* PHP-7.0:
  fix NEWS
  add missing NEWS entry
  update NEWS
  #72337 invalid dimensions can lead to segv
  7.0.9 next

Conflicts:
	configure.in
	main/php_version.h
2016-06-07 18:51:34 +02:00
Anatol Belski 7935a1e2ff fix NEWS 2016-06-07 18:44:40 +02:00
Anatol Belski 74d8429f53 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  add missing NEWS entry
2016-06-07 18:42:55 +02:00
Anatol Belski 1d0f128351 add missing NEWS entry 2016-06-07 18:41:17 +02:00
Pierre Joye 99f8a5587b update NEWS 2016-06-07 17:40:55 +07:00
Pierre Joye 3071ba1ff8 Merge branch 'PHP-7.0' of git.php.net:php-src into PHP-7.0 2016-06-07 17:38:41 +07:00
Pierre Joye 1bbd7fc7eb Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  #72337 invalid dimensions can lead to segv
2016-06-07 17:18:14 +07:00
Pierre Joye f80125950c #72337 invalid dimensions can lead to segv 2016-06-07 17:16:40 +07:00
Anatol Belski 407850e8c1 set versions 2016-06-07 10:10:16 +02:00
Anatol Belski 041210f441 7.0.9 next 2016-06-07 10:04:25 +02:00
Anatol Belski edb8c3f6e3 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Add test for bug #53735
2016-06-06 21:07:45 +02:00
Anatol Belski 2a0ed8a2eb Add test for bug #53735 2016-06-06 21:06:06 +02:00
Anatol Belski 3e6c02b91a fix ibase handle initialization, mostly compiler warnings 2016-06-06 13:30:17 +02:00
Anatol Belski 174c3371bd Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix typo
2016-06-06 08:58:08 +02:00
Anatol Belski eaef8f6db2 fix typo 2016-06-06 08:56:40 +02:00
Anatol Belski 075c75873e Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix broken skipif and add xfail for now
2016-06-06 08:21:39 +02:00
Anatol Belski 1b2afd478b fix broken skipif and add xfail for now 2016-06-06 08:20:01 +02:00
Anatol Belski 6ec8b2c57d Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  missing return
2016-06-06 07:33:36 +02:00
Anatol Belski c05b417718 missing return 2016-06-06 07:28:12 +02:00
Jakub Zelenka 1f7535234e Merge branch 'PHP-5.6' into PHP-7.0 2016-06-05 17:30:03 +01:00
Jakub Zelenka d4615d1118 Add new test for openssl_pkey_new 2016-06-05 17:27:47 +01:00
Jakub Zelenka 497fe33d6f Add test for openssl_error_string
This test is important for making sure that the error strings
from OpenSSL works as expected and we can safely add a fix
for storing the strings that is prepared.
2016-06-05 17:23:05 +01:00
Jakub Zelenka 5e9f387175 Remove openssl_x509_parse for OpenSSL 0.9.x
The test is unstable and it actually fails with latest 0.9.8
2016-06-05 16:28:50 +01:00
Anatol Belski f2bc71e43d Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
  Fixed bug #70484 selectordinal doesn't work with named parameters
2016-06-02 12:20:46 +02:00
Anatol Belski 2004c25790 update NEWS 2016-06-02 12:18:33 +02:00
Anatol Belski 22336db97f Fixed bug #70484 selectordinal doesn't work with named parameters 2016-06-02 12:17:42 +02:00
Anatol Belski 48ca6dfc70 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix ODBC bug for varchars returning with length zero
2016-06-02 12:07:54 +02:00
Elizabeth Marie Smith 72c9324d70 Fix ODBC bug for varchars returning with length zero 2016-06-02 12:04:10 +02:00
Xinchen Hui 31ce3a661a Fixed bug #72308 (fastcgi_finish_request and logging environment variables) 2016-06-02 14:16:32 +08:00
Anatol Belski 51cb58e709 update NEWS 2016-06-01 14:08:32 +02:00
Anatol Belski 79b978db9a Add test for bug #72294 2016-06-01 11:55:35 +02:00
Anatol Belski af8fa8e937 Fixed bug #72294 Segmentation fault/invalid pointer in connection with pgsql_stmt_dtor 2016-06-01 11:55:35 +02:00
Xinchen Hui cf1ad54b64 Also include ini_get 2016-06-01 10:46:04 +08:00
Xinchen Hui f5bc7e881b Forgotten test script for bug #72300 2016-06-01 10:43:53 +08:00
Anatol Belski 1d4d8c7436 fix test portability 2016-05-31 18:42:40 +02:00
Xinchen Hui f2a814df33 Fixed bug #72300 (ignore_user_abort(false) has no effect) 2016-05-31 07:24:02 -07:00
Xinchen Hui 953ee61a49 No sure why this is failed in travis 2016-05-31 17:22:47 +08:00
Xinchen Hui 47fa763fae Fixed test (keyword is local related) 2016-05-31 16:55:58 +08:00
Xinchen Hui 072bc589fc Attempt to fix tests fails 2016-05-31 16:48:19 +08:00
Xinchen Hui d1dd9b4558 Re-Fixed bug #72155 (use-after-free caused by get_zval_xmlrpc_type) 2016-05-31 11:44:20 +08:00
Xinchen Hui a811b5e38d Revert "fix #72155 (use-after-free caused by get_zval_xmlrpc_type)"
This reverts commit 1690dcb827.
2016-05-31 11:32:09 +08:00
Anatol Belski 2524ab9e67 fix condition 2016-05-30 18:35:14 +02:00
Anatol Belski c101690972 update NEWS 2016-05-30 14:10:27 +02:00
Bob Weinand 67468fb417 Fixed bug #72284 (phpdbg fatal errors with coverage)
Cherry-pick of original commits d3371b and 0f20e11 only present in master
2016-05-30 13:31:17 +02:00
Anatol Belski 933d6b188c fix test title 2016-05-30 12:48:00 +02:00
Anatol Belski 97c530fece Add test for bug #72258 2016-05-30 12:47:04 +02:00
Anatol Belski f6e79af3ef update UPGRADING 2016-05-30 10:32:43 +02:00
Anatol Belski 2c80459c24 Expose missing flags from libzip at least >= 0.11.x
These are helpful with reading/writing zips containing non UTF-8
filenames to mitigate possibly changed libzip behaviors.

Partial cherry-pick of 893c2405ff
2016-05-30 10:32:43 +02:00
Joe Watkins 1690dcb827 fix #72155 (use-after-free caused by get_zval_xmlrpc_type) 2016-05-30 08:56:50 +01:00
Joe Watkins 0c5bd4d445 This is exported at implementation site, but no forward declaration can cause compile warnings 2016-05-29 06:02:38 +01:00
Nikita Popov 4746e5efcb Forbid "yield from" in force closed generators
Same check we do for "yield", was missed when "yield from" was
added. We could make this more granular by only forbidding to
actually yield values and still allow something like "yield from []",
but this does not seem worthwhile.
2016-05-28 13:21:05 +02:00
Xinchen Hui d29bd582a8 Added NEWS Entry 2016-05-28 16:12:10 +08:00
Lauri Kenttä 58302192b7 Test for bug #72221, segfault in zend_memnstr_ex 2016-05-28 16:10:29 +08:00
Lauri Kenttä 287f9489d8 Fix bug #72221 (segfault, past-the-end access) 2016-05-28 16:10:16 +08:00
Ferenc Kovacs cc0d237664 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2016-05-26 03:05:52 +02:00
Ferenc Kovacs 6e5958e37d update NEWS 2016-05-26 03:05:06 +02:00
Adam Harvey c523dfdb49 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix typo in phpdbg help.
2016-05-25 12:47:49 -05:00
Adam Harvey 54eb659032 Fix typo in phpdbg help.
Sorry, I would have included this in the last push had I spotted it a
minute earlier.
2016-05-25 12:47:35 -05:00
Adam Harvey ac29f9de86 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Add missing newlines to phpdbg's help for the run command.
2016-05-25 12:40:23 -05:00
Adam Harvey e623e91e27 Add missing newlines to phpdbg's help for the run command.
This is not at all related to needing screenshots for a talk I'm giving
in two days. No sir. Not at all.
2016-05-25 12:38:41 -05:00
Remi Collet 4dd03651f3 Skip test which is 64bits only
Diff from test output
001+ Warning: fread(): Length parameter must be greater than 0 in ...
001- Warning: fread(): Length parameter must be no more than 2147483647 in ...
2016-05-25 16:40:52 +02:00
Remi Collet 815b5fe7ae Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Skip test which is 64bits only
2016-05-25 16:19:52 +02:00
Remi Collet ce932f6479 Skip test which is 64bits only
Diff from test output
001+ Warning: fread(): Length parameter must be greater than 0 in ...
001- Warning: fread(): Length parameter must be no more than 2147483647 in ...
2016-05-25 16:17:12 +02:00
Julien Pauli 0c84740450 5.5.37 now 2016-05-25 11:37:58 +02:00
Anatol Belski 1f3f46cc60 update NEWS 2016-05-25 11:30:00 +02:00
Anatol Belski 02a3a93f9b Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix test portability
2016-05-25 11:21:16 +02:00
Anatol Belski 65a2c451bb fix test portability 2016-05-25 11:19:19 +02:00
Anatol Belski 8dab872a43 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  prepare for 5.6.22RC1
2016-05-25 11:15:39 +02:00
Stanislav Malyshev 2fe563e8d8 Merge branch 'PHP-7.0.7' into PHP-7.0
* PHP-7.0.7:
  Fix memory leak in imagescale()
  Update NEWS
  Better fix for bug #72135
  Fixed bug #72227: imagescale out-of-bounds read
  Fix bug #72241: get_icu_value_internal out-of-bounds read
  Fix bug #72135 - don't create strings with lengths outside int range
  set versions
  Add check for string overflow to all string add operations
  Fix bug #72114 - int/size_t confusion in fread
  Updated NEWS
  Fixed bug #71331 - Uninitialized pointer in phar_make_dirstream()

Conflicts:
	configure.in
	main/php_version.h
2016-05-24 20:51:52 -07:00
Stanislav Malyshev 3ed0114e7f Merge branch 'PHP-5.5' into PHP-7.0.7
* PHP-5.5:
  Fix memory leak in imagescale()
  Update NEWS
  Better fix for bug #72135
  Fixed bug #72227: imagescale out-of-bounds read
  Fix bug #72241: get_icu_value_internal out-of-bounds read
  Fix bug #72135 - don't create strings with lengths outside int range
  Add check for string overflow to all string add operations
  Fix bug #72114 - int/size_t confusion in fread
  Updated NEWS
  Fixed bug #71331 - Uninitialized pointer in phar_make_dirstream()

Conflicts:
	Zend/zend_operators.c
	ext/intl/locale/locale_methods.c
	ext/phar/dirstream.c
	ext/phar/tests/bug71331.phpt
	ext/standard/file.c
	ext/standard/html.c
2016-05-24 18:05:06 -07:00
Stanislav Malyshev 2464b092eb Merge branch 'PHP-5.6.22' into PHP-5.6
* PHP-5.6.22:
  Fix memory leak in imagescale()
  Update NEWS
  Better fix for bug #72135
  Fixed bug #72227: imagescale out-of-bounds read
  Fix bug #72241: get_icu_value_internal out-of-bounds read
  Fix bug #72135 - don't create strings with lengths outside int range
  prepare for 5.6.22RC1
  Add check for string overflow to all string add operations
  Fix bug #72114 - int/size_t confusion in fread
  Updated NEWS
  Fixed bug #71331 - Uninitialized pointer in phar_make_dirstream()

Conflicts:
	configure.in
	main/php_version.h
2016-05-24 17:21:22 -07:00
Stanislav Malyshev 544940c48a Merge branch 'PHP-5.5' into PHP-5.6.22
* PHP-5.5:
  Fix memory leak in imagescale()
  Update NEWS
  Better fix for bug #72135
  Fixed bug #72227: imagescale out-of-bounds read
  Fix bug #72241: get_icu_value_internal out-of-bounds read
  Fix bug #72135 - don't create strings with lengths outside int range
  Add check for string overflow to all string add operations
  Fix bug #72114 - int/size_t confusion in fread
  Updated NEWS
  Fixed bug #71331 - Uninitialized pointer in phar_make_dirstream()

Conflicts:
	Zend/zend_operators.c
	ext/phar/dirstream.c
	ext/phar/tests/bug71331.phpt
2016-05-24 16:56:36 -07:00
Stanislav Malyshev 9a826a3bd9 Fix memory leak in imagescale() 2016-05-24 16:12:01 -07:00
Stanislav Malyshev f423e1bb89 Update NEWS 2016-05-24 15:56:02 -07:00
Stanislav Malyshev e955913115 Better fix for bug #72135 2016-05-24 15:52:15 -07:00
Stanislav Malyshev 7a1aac3343 Fixed bug #72227: imagescale out-of-bounds read
Ported from https://github.com/libgd/libgd/commit/4f65a3e4eedaffa1efcf9ee1eb08f0b504fbc31a
2016-05-23 00:34:35 -07:00
Stanislav Malyshev 97eff7eb57 Fix bug #72241: get_icu_value_internal out-of-bounds read 2016-05-22 17:49:02 -07:00
Derick Rethans c572968900 Merge branch 'PHP-5.6' into PHP-7.0 2016-05-18 12:19:49 +01:00
Derick Rethans f43f6fc39b Fixed bug #63740 (strtotime seems to use both sunday and monday as start of week) 2016-05-18 12:19:11 +01:00
Dmitry Stogov d41920c57d Use PHP_VERSION as OPcahce version 2016-05-17 17:16:10 +03:00
Xinchen Hui 2eb7e75c25 Let's only read-only here 2016-05-17 18:07:20 +08:00
Xinchen Hui 7989db975f Fixed bug #72229 (Wrong reference when serialize/unserialize an object) 2016-05-17 17:40:26 +08:00
Anatol Belski 7e5ea3c305 update NEWS 2016-05-16 19:30:38 +02:00
Thomas Punt 0e21742bf8 Tidy up 2016-05-16 19:15:40 +02:00
Thomas Punt 367fde9947 Remove unnecessary boundary checks 2016-05-16 19:15:40 +02:00
Thomas Punt 39052d4d75 Resolve bug #72017 2016-05-16 19:15:40 +02:00
Xinchen Hui 6f4860545b Revert "Revert the ABI break commit"
This reverts commit 07220f615b.
2016-05-16 06:23:55 -07:00
Xinchen Hui 0b3a4c6101 Revert "Revert "fix #72143 (preg_replace uses int instead of size_t on zend_string_allocs)""
obviously I read the change is in argument lists by mistake :<

This reverts commit 9e7afa7514.
2016-05-16 06:22:13 -07:00
Xinchen Hui 8578fb994b Correct name, it was typed in habitually 2016-05-16 14:48:13 +08:00
Stanislav Malyshev 0da8b8b801 Fix bug #72135 - don't create strings with lengths outside int range 2016-05-15 23:26:51 -07:00
Xinchen Hui 07220f615b Revert the ABI break commit 2016-05-16 11:24:39 +08:00
Xinchen Hui 9e7afa7514 Revert "fix #72143 (preg_replace uses int instead of size_t on zend_string_allocs)"
ABI break

This reverts commit fb951553be.
2016-05-16 11:24:16 +08:00
Xinchen Hui 1559fd7e48 Fixed bug #72218 (If host name cannot be resolved then PHP 7 crashes) 2016-05-16 11:19:45 +08:00
Joe Watkins fb951553be fix #72143 (preg_replace uses int instead of size_t on zend_string_allocs) 2016-05-14 08:20:41 +01:00
Joe Watkins b165114013 fix #72206 (xml_parser_create/xml_parser_free leaks mem) 2016-05-14 08:10:16 +01:00
Joe Watkins 1524e00ccc improve 7132fe19c2 2016-05-13 12:47:36 +01:00
Joe Watkins 7132fe19c2 fix 1bb8a7b0b8 2016-05-13 09:25:15 +01:00
Joe Watkins 1bb8a7b0b8 fix #72180 (Env variables incorrectly pretty printed in config.nice, phpinfo) 2016-05-13 07:41:11 +01:00
Anatol Belski f751b1ceaf fix dir separator in test 2016-05-12 20:37:04 +02:00
Anatol Belski d33f258495 update NEWS 2016-05-12 13:39:15 +02:00
Anatol Belski 9f50bb5bfa workaround the extra new line in the test out on another env 2016-05-12 12:45:04 +02:00
Anatol Belski 7f6e285430 Fixed bug #72197 pg_lo_create arbitrary read 2016-05-12 11:40:28 +02:00
Xinchen Hui 3797e570b2 Added NEWS entry missed while doing merge 2016-05-12 13:48:24 +08:00
Xinchen Hui 92828ae204 Committed by accident 2016-05-12 13:40:22 +08:00
Xinchen Hui d1926742aa 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 serializing ZEND_AST_SHELL_EXEC
  add missing NEWS entry
  prepare for 5.6.22RC1
  add missing NEWS entry
2016-05-12 13:16:07 +08:00
Xinchen Hui 3c0341e6f9 Fixed bug #72195 (pg_pconnect/pg_connect cause use-after-free) 2016-05-12 13:15:33 +08:00
Sara Golemon a73b03edea Fix serializing ZEND_AST_SHELL_EXEC
Currently, `foo` is reserialized as `'foo'` due to misuse of zend_ast_export().
ZEND_AST_SHELL_EXEC can only contain ZEND_AST_ZVAL(string) or ZEND_AST_ENCAPS_LIST,
so just handle the ZEND_AST_ZVAL(string) case directly.
2016-05-12 02:47:56 +00:00
Ferenc Kovacs fe6af26e2d prepare for 5.6.22RC1 2016-05-11 23:34:15 +02:00
Ferenc Kovacs 414eb83460 add missing NEWS entry 2016-05-11 23:31:52 +02:00
Ferenc Kovacs edcc97df39 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  prepare for 5.6.22RC1
  add missing NEWS entry
2016-05-11 23:31:09 +02:00
Ferenc Kovacs 0815f7f755 prepare for 5.6.22RC1 2016-05-11 23:30:04 +02:00
Ferenc Kovacs 89e4862e5f add missing NEWS entry 2016-05-11 23:29:23 +02:00
Xinchen Hui df404e2e0e Fixed Bug #72193 (dns_get_record returns array containing elements of type 'unknown') 2016-05-11 17:31:46 +08:00
Xinchen Hui 66ad4fc393 Fixed bug #71573 (Segfault (core dumped) if paramno beyond bound) 2016-05-11 11:12:27 +08:00
Derick Rethans c35bd4861d Allow for special case for the opcache zend extension 2016-05-10 15:40:03 -04:00
Anatol Belski 0718aa5833 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix handle leak
2016-05-10 20:02:17 +02:00
Anatol Belski 6b63d80a7a fix handle leak 2016-05-10 19:59:48 +02:00
Dmitry Stogov f7372f648f Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  The "flock" structure has to be writable on AIX.
2016-05-10 17:53:33 +03:00
Dmitry Stogov 90f43caf5b The "flock" structure has to be writable on AIX. 2016-05-10 17:50:14 +03:00
Anatol Belski 2beacaad49 set versions 2016-05-10 13:16:44 +02:00
Anatol Belski 09dae4dc85 prepare next 7.0.8 2016-05-10 13:06:55 +02:00
Nikita Popov a1ed4ab3ca Fixed bug #72174
Also fixes a memory leak if ::getValue() is used with __get().
2016-05-10 12:13:10 +02:00
Stanislav Malyshev 41fc3c76e9 Add check for string overflow to all string add operations 2016-05-09 22:17:20 -07:00
Stanislav Malyshev abd159cce4 Fix bug #72114 - int/size_t confusion in fread 2016-05-09 21:55:29 -07:00
Anatol Belski 3407931108 update NEWS 2016-05-09 18:51:54 +02:00
Anatol Belski a430f8a562 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2016-05-09 18:51:25 +02:00
Anatol Belski 0ea2bfb30e update NEWS 2016-05-09 18:50:40 +02:00
Anatol Belski fc2a45b70a Revert "Fixed bug #71820 pg_fetch_object bind parameters before call constructor"
This reverts commit b4eedd128b.

This fixed bug #72151, and reverts the fix for bug #71820.
See also bug #50636 and #49521 for the history.
2016-05-09 17:25:53 +02:00
Anatol Belski 692c262526 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Revert "Backport patch for bug #71820"
2016-05-09 17:23:40 +02:00
Anatol Belski 1cc536af5a Revert "Backport patch for bug #71820"
This reverts commit 1b632cfe83.

This fixed bug #72151, and reverts the fix for bug #71820.
See also bug #50636 and #49521 for the history.
2016-05-09 17:15:40 +02:00
Anatol Belski f152c3fa57 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed bug #64524 Add intl.use_exceptions to php.ini-*
2016-05-08 15:12:20 +02:00
Anatol Belski 41b159fd11 Fixed bug #64524 Add intl.use_exceptions to php.ini-* 2016-05-08 15:09:50 +02:00
Xinchen Hui 69adf2370e Fixed test 2016-05-07 22:04:20 -07:00
Xinchen Hui 29079f263e Strlen cleanup (additions for previous one fix)
Probably compilers will do similar optimization
2016-05-07 00:08:15 -07:00
Xinchen Hui f7439afeda Merge branch 'PHP-5.6' into PHP-7.0
Conflicts:
	Zend/zend_strtod.c
2016-05-06 23:52:48 -07:00
Xinchen Hui 1c7f608071 Fixed bug #72172 (zend_hex_strtod should not use strlen) 2016-05-06 23:52:06 -07:00
Xinchen Hui 197470b62f Revert "Fixed bug #72170 (JsonSerializable may inc apply count without dec it)"
This reverts commit 459a7cc209.
2016-05-06 20:25:24 +08:00
Xinchen Hui 459a7cc209 Fixed bug #72170 (JsonSerializable may inc apply count without dec it)
I don't want use zend_try here, but seems I have no choice :<
2016-05-06 18:38:26 +08:00
Anatol Belski 627b5aae3f update NEWS 2016-05-06 09:41:21 +02:00
Anatol Belski d76638b491 reorder entry alphabetically 2016-05-06 09:39:02 +02:00
Anatol Belski 5afba67bfe Re-fix #72165
Reverted previous wrong patch, throw warning for numeric keys.
Numeric field names are not supported, see "distinguished name"
section here https://www.openssl.org/docs/manmaster/apps/req.html
2016-05-06 09:30:41 +02:00
Anatol Belski dd5479ea4c Revert "Fixed bug #72165 Null pointer dereference - openssl_csr_new"
This reverts commit 7277c85765.
2016-05-06 09:19:04 +02:00
Anatol Belski 7277c85765 Fixed bug #72165 Null pointer dereference - openssl_csr_new 2016-05-06 09:01:27 +02:00
Xinchen Hui 080f6b10ec Fixed test 2016-05-06 10:51:38 +08:00
Xinchen Hui 441d1b8ef0 Revert "Fix bug #72162 (again)"
The problem is because we release p->value too early

and later you try to convert an object to string, which is a fatal error

then leave p->value double free, change to expect long is a BC break

This reverts commit 8e5b381004.
2016-05-06 10:45:44 +08:00
Nikita Popov 8e5b381004 Fix bug #72162 (again)
Not sure what the previous fix was supposed to do. The issue was
that error_reporting() simply assumes that the value must either
be an integer or a string.

Fixed by using zpp properly.
2016-05-05 17:28:52 +02:00
Xinchen Hui 395863b1d1 Fixed bug #72164 (Null Pointer Dereference - mb_ereg_replace) 2016-05-05 17:27:34 +08:00
Xinchen Hui c15b6134f6 Fixed bug #72154 (pcntl_wait/pcntl_waitpid array internal structure overwrite) 2016-05-05 15:18:17 +08:00
Xinchen Hui 1a5d58b28f Fixed bug #72157 (use-after-free caused by dba_open) 2016-05-05 11:12:17 +08:00
Xinchen Hui 9191862121 Fixed bug #72162 (use-after-free - error_reporting) 2016-05-05 11:02:21 +08:00
Nikita Popov 0691e7a8e1 Fix JMPZ, JMPZNZ_EX chain optimization
The result_type was not copied, resulting in a corrupted JMPZ_EX.
Fix can be verified by inspecting the opcodes of the following
function (it should not contain any _EX opcodes):

function test() {
    if ($a && $b) {
        echo "a";
    }

    if ($b || $c || $d) {
        echo "b";
    }
}

Conflicts:
	ext/opcache/Optimizer/block_pass.c
2016-05-05 00:00:56 +02:00
Nikita Popov 9af0c96af4 Fix bug #72159 2016-05-04 18:43:11 +02:00
Anatol Belski 44372d6953 fix NEWS, patch for #71428 was reverted 2016-05-04 18:14:11 +02:00
Joe Watkins a17e4187e7 correct wording 2016-05-04 17:04:38 +01:00
Joe Watkins 9bbee305e3 add compiler option to disable builtins (special case function calls) 2016-05-04 10:53:59 +01:00
Anatol Belski 2d0081cebd Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  add test fo rbug 71805
2016-05-03 19:10:40 +02:00
Anatol Belski 5351151352 add test fo rbug 71805 2016-05-03 19:09:11 +02:00
Anatol Belski 578ba03339 update libs versions 2016-05-03 18:27:21 +02:00
Anatol Belski 07519d4c4b Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  upate libs versions
2016-05-03 18:27:03 +02:00
Anatol Belski a387075954 upate libs versions 2016-05-03 18:24:35 +02:00
Nikita Popov fbae590bf0 Fix leaks in QM_ASSIGN, JMP_SET and COALESCE
The QM_ASSIGN code was rewritten to use the standard pattern for
handling CVs and VARs.
2016-05-03 18:12:56 +02:00
Bob Weinand b4c5009220 Mark fcc as initialized for object calls
This results in 1% speedup (cycle count) on some real world applications
2016-05-03 02:07:06 +02:00
Nikita Popov ec7c3c22b6 Fix leak in zend_get_constant_ex 2016-05-02 19:59:43 +02:00
Bob Weinand 45c0301b69 Added NEWS entry for socket_export_stream()
Closes pull request https://github.com/php/php-src/pull/762
2016-05-02 17:11:26 +02:00
Chris Wright e8abb70fc9 Implement socket_export_stream() 2016-05-02 17:08:15 +02:00
Julien Pauli 95ed19ae28 Updated NEWS 2016-05-02 16:52:58 +02:00
Julien Pauli a4abd2bed9 Backport of fixed for bug #71331 - Uninitialized pointer in phar_make_dirstream() 2016-05-02 16:49:47 +02:00
Nikita Popov d5a38280be Drop dup declare with inconsistent linkage
This is already declared in zend_stream.h as ZEND_API.
2016-05-02 11:56:28 +02:00
Anatol Belski 5360b3de33 fix test if unlink fails occasionally 2016-05-01 19:25:39 +02:00
Anatol Belski 81e62e66d6 fix dir separator in test 2016-05-01 19:05:02 +02:00
Anatol Belski 2acdf68b5a Merge branch 'PHP-7.0' of git.php.net:php-src into PHP-7.0 2016-05-01 13:23:35 +02:00
Anatol Belski bb7cae788e Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Update PHP 5.5 NEWS entries with CVE info
  Added CVE
  Updated NEWS
2016-05-01 13:19:48 +02:00
Anatol Belski 20359deae6 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Update PHP 5.5 NEWS entries with CVE info
  Added CVE
  Updated NEWS
2016-05-01 13:18:24 +02:00
Lior Kaplan 5c571626e3 Update PHP 5.5 NEWS entries with CVE info 2016-05-01 13:14:57 +02:00
Nikita Popov 8e855534b7 Fix posix build 2016-05-01 13:07:01 +02:00
Nikita Popov d0069ca6c1 Fix ('\bar')() in namespace 2016-05-01 13:05:14 +02:00
Xinchen Hui 895337ddbd Fixed bug #72133 (php_posix_group_to_array crashes if gr_passwd is NULL) 2016-05-01 11:00:41 +08:00
Sara Golemon d0b952260e Create temporary sqlite db in test dir rather than cwd (and clean it up)
Well behaved tests do not leave their droppings all over the filesystem.
2016-04-30 06:02:01 +00:00
Anatol Belski 8c74f03c10 fix test 2016-04-29 14:30:19 +02:00
Pierrick Charron 3c92f113e4 Expose some of the new curl constants to PHP userspace 2016-04-29 14:19:55 +02:00
Lior Kaplan 9943c32242 Add CVE IDs PHP 7.0.0 2016-04-29 13:41:29 +03:00
Lior Kaplan 5a578eb8f0 Add CVE IDs PHP 7.0.2 2016-04-29 13:40:44 +03:00
Lior Kaplan 8c215baae7 Add CVE IDs PHP 7.0.3 2016-04-29 13:40:07 +03:00
Lior Kaplan 8491a4e438 Add CVE IDs PHP 7.0.4 2016-04-29 13:39:03 +03:00
Lior Kaplan 19b5e950e7 Add CVE IDs PHP 7.0.5 2016-04-29 13:38:25 +03:00
Lior Kaplan 34dec87343 Add CVE to bug #71912 (PHP 7.0.6) 2016-04-29 13:36:24 +03:00
Lior Kaplan 6e68b44843 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Add CVE to bug #69719 (PHP 5.6.10)
  Add CVE IDs PHP 5.6.12
  Add CVE IDs PHP 5.6.13
  Add CVE IDs PHP 5.6.14
  Add CVE to bug #70976 (PHP 5.6.17)
  Add CVE IDs PHP 5.6.18
  Add CVE IDs PHP 5.6.20
  Add CVE to bug #71912 (PHP 5.6.21)
2016-04-29 13:26:46 +03:00
Lior Kaplan 76a5117da7 Add CVE to bug #69719 (PHP 5.6.10) 2016-04-29 13:23:41 +03:00
Lior Kaplan eeea33db68 Add CVE IDs PHP 5.6.12 2016-04-29 13:21:35 +03:00
Lior Kaplan 26f8ee48d6 Add CVE IDs PHP 5.6.13 2016-04-29 13:19:46 +03:00
Lior Kaplan 91fd5406bc Add CVE IDs PHP 5.6.14 2016-04-29 13:17:34 +03:00
Lior Kaplan 34fc0ec377 Add CVE to bug #70976 (PHP 5.6.17) 2016-04-29 13:16:27 +03:00
Lior Kaplan a23ae0f436 Add CVE IDs PHP 5.6.18 2016-04-29 13:15:30 +03:00
Lior Kaplan b8b2dd1a43 Add CVE IDs PHP 5.6.20 2016-04-29 13:11:54 +03:00
Lior Kaplan a91c3f1dd0 Add CVE to bug #71912 (PHP 5.6.21) 2016-04-29 13:10:13 +03:00
Joe Watkins dbae1653da fix size_t signed comparison 2016-04-29 10:19:55 +01:00
Julien Pauli 6058b78878 Added CVE 2016-04-29 09:12:27 +02:00
Xinchen Hui a5718539b1 Fixed build 2016-04-29 11:13:15 +08:00
Lior Kaplan 9e57360c83 Add NEWS entry for bug #71331 (fixed in 7.0.3) 2016-04-28 21:12:27 +03:00
Lior Kaplan b18da2a322 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Add NEWS entry for bug #71331 (fixed in PHP 5.6.18)
2016-04-28 21:12:00 +03:00
Stanislav Malyshev 9649ca1630 Fixed bug #71331 - Uninitialized pointer in phar_make_dirstream() 2016-04-28 20:57:44 +03:00
Lior Kaplan e70fe1c42e Add NEWS entry for bug #71331 (fixed in PHP 5.6.18) 2016-04-28 20:46:29 +03:00
Anatol Belski 67b5d647dd update NEWS 2016-04-28 19:46:15 +02:00
Dmitry Stogov d851e8389c Added test 2016-04-28 20:12:42 +03:00
Dmitry Stogov 9e45ac53ce Fixed BC break described by bug #72119.
It was introduced after 7.0.5 release by attempt to fix bug #71428.
2016-04-28 19:56:10 +03:00
Joe Watkins 2787a24f86 simplify expression 2016-04-28 15:52:30 +01:00
Joe Watkins f580540c8d simplify expression 2016-04-28 15:50:27 +01:00
Joe Watkins 64721f143a Merge branch 'PHP-7.0' of https://github.com/php/php-src into PHP-7.0 2016-04-28 15:41:23 +01:00
Joe Watkins e27a43b7be variable used out of scope 2016-04-28 15:40:28 +01:00
Bob Weinand 74ef863f5d Fixed bug #72116 (7.0.6 array_fill optimization breaks implementation) 2016-04-28 11:02:47 +02:00
Ferenc Kovacs 595d19bcfa Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  small whitespace fix
2016-04-28 02:37:01 +02:00
Ferenc Kovacs 227e5d1153 small whitespace fix 2016-04-28 02:32:45 +02:00
Anatol Belski a877c7ae29 update NEWS 2016-04-27 18:58:28 +02:00
Anatol Belski 759271ff34 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2016-04-27 14:56:35 +02:00
Anatol Belski 05df0951b2 update NEWS 2016-04-27 14:56:08 +02:00
Anatol Belski 0c529b3899 update NEWS 2016-04-27 14:50:46 +02:00
Xinchen Hui a05320c419 Use zend_string_safe_alloc 2016-04-27 20:29:11 +08:00
Anatol Belski 25ef19f927 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix/improve tests
2016-04-27 13:19:29 +02:00
Anatol Belski a21a997478 fix/improve tests 2016-04-27 13:16:57 +02:00
Anatol Belski 4bc97db0b8 fix merge 2016-04-27 12:24:28 +02:00
Julien Pauli 008f983ba6 Updated NEWS 2016-04-27 11:55:05 +02:00
Anatol Belski 33d41da347 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix memory leak
  Fix bug #72099: xml_parse_into_struct segmentation fault
  5.5.36 now
  Fix bug #72094 - Out of bounds heap read access in exif header processing
  Fix bug #72093: bcpowmod accepts negative scale and corrupts _one_ definition
  Fix bug #72061 - Out-of-bounds reads in zif_grapheme_stripos with negative offset
  Fix for bug #71912 (libgd: signedness vulnerability)
  Typo in NEWS
2016-04-27 11:45:29 +02:00
Stanislav Malyshev e315a162da Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix memory leak
  Fix bug #72099: xml_parse_into_struct segmentation fault
  5.5.36 now
  Fix bug #72094 - Out of bounds heap read access in exif header processing
  Fix bug #72093: bcpowmod accepts negative scale and corrupts _one_ definition
  Fix bug #72061 - Out-of-bounds reads in zif_grapheme_stripos with negative offset
  Fix for bug #71912 (libgd: signedness vulnerability)
  Typo in NEWS

Conflicts:
	configure.in
	main/php_version.h
2016-04-26 23:48:41 -07:00
Stanislav Malyshev a32e143d4e fix build 2016-04-26 23:04:29 -07:00
Stanislav Malyshev ccc12efa32 Fix bug #71923 - integer overflow in ZipArchive::getFrom* 2016-04-26 22:59:09 -07:00
Stanislav Malyshev 61c7a06e7c Fix memory leak 2016-04-26 22:54:58 -07:00
Stanislav Malyshev dccda88f27 Fix bug #72099: xml_parse_into_struct segmentation fault 2016-04-26 22:46:28 -07:00
Xinchen Hui c89b7a4860 Use zend_string_safe_alloc 2016-04-27 12:45:02 +08:00
Julien Pauli f856734c67 5.5.36 now 2016-04-26 22:34:00 +02:00
Dmitry Stogov 4ce8a15eae Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed test on 32-bit platforms (split into 32-bit and 64-bit versions)
2016-04-26 13:44:52 +03:00
Dmitry Stogov 9f389cccfd Fixed test on 32-bit platforms (split into 32-bit and 64-bit versions) 2016-04-26 13:43:18 +03:00
Dmitry Stogov 8f0ceb97cf Fixed bug #72100 (implode() inserts garbage into resulting string when joins very big integer). (Mikhail Galanin) 2016-04-26 13:04:06 +03:00
Dmitry Stogov 92233dd736 Fixed bug #72101 (crash on complex code) 2016-04-25 14:11:46 +03:00
Stanislav Malyshev 082aecfc3a Fix bug #72094 - Out of bounds heap read access in exif header processing 2016-04-24 19:33:52 -07:00
Stanislav Malyshev d650063a04 Fix bug #72093: bcpowmod accepts negative scale and corrupts _one_ definition
We can not modify result since it can be copy of _zero_ or _one_, etc. and
"copy" in bcmath is just bumping the refcount.
2016-04-24 18:33:32 -07:00
Stanislav Malyshev fd9689745c Fix bug #72061 - Out-of-bounds reads in zif_grapheme_stripos with negative offset 2016-04-24 13:15:17 -07:00
Pierrick Charron a2d78d1a5f Fixed bug #68658 (Define CURLE_SSL_CACERT_BADFILE) 2016-04-23 22:55:00 -04:00
Pierrick Charron 043ce195c6 Fix cURL test to use local server instead of google 2016-04-23 18:37:55 -04:00
Anatol Belski e0edb25cf2 Fixed bug #72035 php-cgi.exe fails to run scripts relative to drive root 2016-04-23 18:55:52 +02:00
Xinchen Hui 589d0e0f18 Fixed bug #72069 (Behavior \JsonSerializable different from json_encode) 2016-04-22 21:41:44 -07:00
Xinchen Hui 9eb7c8cd3b Fixed bug #72075 (Referencing socket resources breaks stream_select) 2016-04-22 21:21:49 -07:00
Nikita Popov 988bdd0908 Fix escape sequences in pgsql.c 2016-04-21 23:41:59 +02:00
Bob Weinand 69efeb1223 Fix constant expr coaleasce with protected mode opcache 2016-04-21 21:51:00 +02:00
Bob Weinand 5053fc078d Fixed bug #72059 - Reference the bug id directly in NEWS 2016-04-21 02:48:52 +02:00
Bob Weinand a287c3f776 Fix magic constants (__LINE__) with ?? for constant scalar exprs
Also fix general memory leak when root ast gets replaced in compile time evaluation
2016-04-21 02:45:09 +02:00
Bob Weinand 672a99597c Add NEWS entry for ?? in constant scalar expressions 2016-04-21 01:24:56 +02:00
Márcio Almada 9f3eab44df allow null coalescing (??) on constant expressions 2016-04-21 01:22:28 +02:00
Nikita Popov 85867268fd Merge branch 'PHP-5.6' into PHP-7.0
Conflicts:
	Zend/zend_compile.c
2016-04-20 19:00:02 +02:00
Adam Harvey c4f69b6dfd Fix ZTS builds by adding a missing TSRMLS_FETCH(). 2016-04-20 18:58:29 +02:00
Nikita Popov 77bb96d7c9 Fix bug #71737
Also improve the error message for $this used in parameters.
2016-04-20 18:38:40 +02:00
Xinchen Hui ede06b7e20 Update NEWS 2016-04-20 08:42:06 -07:00
Nikita Nefedov 19759a5602 Fix RECV opcode to handle all kinds of exceptions
fix RECV opcode to handle exceptions thrown from user-defined error handler
as a result Notice error from failed type coercion
2016-04-20 08:40:44 -07:00
Stanislav Malyshev 7d93363bd9 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Better fix for #71952

Conflicts:
	ext/gd/gd.c
2016-04-19 23:45:21 -07:00
Stanislav Malyshev c02301b666 Better fix for #71952 2016-04-19 23:44:00 -07:00
Stanislav Malyshev 086729bb6c Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix bug #71952: Corruption inside imageaffinematrixget

Conflicts:
	ext/gd/gd.c
2016-04-18 23:34:26 -07:00
Stanislav Malyshev f061867fd3 Fix bug #71952: Corruption inside imageaffinematrixget 2016-04-18 23:33:21 -07:00
Stanislav Malyshev b15f0ecc0f Fix for bug #71912 (libgd: signedness vulnerability) 2016-04-18 22:24:16 -07:00
Xinchen Hui 5ea2b3625d Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0
* 'PHP-7.0' of git.php.net:/php-src:
  Prevent usage in GC after free.
  Fix SEND_USER as well
  Fix SEND_ARRAY+PREFER_REF SHM corruption
2016-04-19 10:59:35 +08:00
Xinchen Hui 7648f20de3 Fixed bug #72051 (The reference in CallbackFilterIterator doesn't work as expected) 2016-04-19 10:59:10 +08:00
Dmitry Stogov e46be0cd19 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Prevent usage in GC after free.
2016-04-19 01:37:24 +03:00
Dmitry Stogov ffc697ac27 Prevent usage in GC after free. 2016-04-19 01:31:49 +03:00
Nikita Popov 73958ca62d Fix SEND_USER as well
Missed copy&paste code here
2016-04-18 22:45:38 +02:00
Nikita Popov a8792158bd Fix SEND_ARRAY+PREFER_REF SHM corruption
Make the behavior consistent between namespaced and not and with
PHP 5.6.
2016-04-18 18:26:20 +02:00
Xinchen Hui aa9f8e695c combine conditions 2016-04-18 19:13:54 +08:00
Bob Weinand b08bde185d Merge branch 'PHP-7.0' of https://github.com/php/php-src into PHP-7.0 2016-04-18 12:13:59 +02:00
Ferenc Kovacs 8f35ee49ee Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  mark frequent intermittent fpm test with XFAIL
2016-04-18 09:04:55 +02:00
Ferenc Kovacs 3a16f511d9 mark frequent intermittent fpm test with XFAIL 2016-04-18 09:04:27 +02:00
Ferenc Kovacs 50cfe0a15c Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  prepare for 5.6.21RC1
2016-04-18 08:15:47 +02:00
Ferenc Kovacs 6497d40521 prepare for 5.6.21RC1 2016-04-18 08:14:16 +02:00
Christopher Jones 3b54d93b2f Bump version in test 2016-04-18 11:15:01 +10:00
Nikita Popov d1a38743a5 Fix SEND_UNPACK array separation
Separating only immutable arrays is not enough.
2016-04-16 22:33:23 +02:00
Bob Weinand 6bb81d2c5f Fix non-/Zend tests too 2016-04-16 20:57:28 +02:00
Bob Weinand 15d1d4f45b Fixed bug #72038 (Function calls with values to a by-ref parameter don't always throw a notice) 2016-04-16 20:36:19 +02:00
Dominic Luechinger 02766d0180 Adds new curl option CURLOPT_SSL_VERIFYSTATUS to enable OCSP verification 2016-04-16 18:30:19 +02:00
Anatol Belski fd6f7b8341 Add test for bug #72028 2016-04-16 16:11:22 +02:00
Nikita Popov d8590940a1 Use symtable lookup for arrays in array_column 2016-04-16 09:59:01 +02:00
Nikita Popov 28801bf249 Respect property visibility in array_column 2016-04-16 09:59:01 +02:00
Nikita Popov c0d8dc5bd7 Fixed bug #72031 2016-04-16 09:58:57 +02:00
Xinchen Hui 7e01c518b6 Fixed bug #72028 (pg_query_params(): NULL converts to empty string)
I don't have a pgsql server by hand, so no test script, but the fix must
be right.
2016-04-15 21:29:27 -07:00
Xinchen Hui 05d53dee7d Fixed bug #71972 (Cyclic references causing session_start(): Failed to decode session object) 2016-04-15 21:08:51 -07:00
Lior Kaplan edb569b439 Align NEWS entry format 2016-04-15 22:17:37 +03:00
Lior Kaplan 7d61d0712b Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Align NEWS entry format
2016-04-15 22:09:05 +03:00
Lior Kaplan 5142bf27b2 Align NEWS entry format 2016-04-15 22:07:47 +03:00
Anatol Belski c0de35273a update NEWS 2016-04-15 13:41:09 +02:00
Anatol Belski d263616525 Fixed #71062 pg_convert() doesn't accept ISO 8601 for datatype timestamp 2016-04-15 13:38:49 +02:00
Xinchen Hui 163d26d584 Fixed failed with libedit 2016-04-15 11:57:53 +08:00
Xinchen Hui 8a17b1a241 Fixed bug #72014 (Including a file with anonymous classes multiple times leads to fatal error) 2016-04-14 20:21:19 +08:00
Christopher Jones ec358dac03 On second thoughts, keep this in sync with 5.6 for 71422 2016-04-14 15:49:15 +10:00
Christopher Jones 96ece22a05 Merge branch 'PHP-5.6' into PHP-7.0 2016-04-14 15:09:02 +10:00
Christopher Jones d1e81a59a7 Fix old comment cut-n-paste error 2016-04-14 15:08:42 +10:00
Christopher Jones 12cd25bb1a Fixed bug #71600 (oci_fetch_all segfaults when selecting more than 8 columns) (Tian Yang) 2016-04-14 14:09:16 +10:00
Christopher Jones cef4bc61c1 Merge fix for bug #71422. No code changed needed in PHP 7 2016-04-14 13:55:32 +10:00
Christopher Jones 8f2e6da806 Fixed bug #71422 (Fix ORA-01438: value larger than specified precision allowed for this column) 2016-04-14 13:50:01 +10:00
Christopher Jones be491a6b3b Merge branch 'PHP-7.0' of https://git.php.net/repository/php-src into PHP-7.0 2016-04-14 13:43:13 +10:00
Anatol Belski 8e6549c354 update NEWS 2016-04-12 19:37:36 +02:00
Anatol Belski e49580c96e Fixed bug #68849 bindValue is not using the right data type 2016-04-12 19:12:45 +02:00
Nikita Popov 4e585eb429 Fix ZEND_SEPARATE for by-val func returning ref zval 2016-04-12 14:44:29 +02:00
Nikita Popov 6a2eee520a Drop unnecessary ZEND_SEPARATE code
The following write ops will separate if necessary.
2016-04-12 14:44:29 +02:00
Joe Watkins b04125da85 phpdbg: close file handles 2016-04-12 13:40:03 +01:00
Remi Collet d62ab27042 fix skipif 2016-04-12 13:46:06 +02:00
Xinchen Hui 9458f54969 This only make sense on *nix 2016-04-12 15:31:21 +08:00
Anatol Belski 57ffb2bd80 prepare next 2016-04-12 06:49:30 +02:00
Anatol Belski a1e9de227d update NEWS 2016-04-11 15:37:45 +02:00
Anatol Belski 28b6f66a77 Fixed bug #70484 selectordinal doesn't work with named parameters 2016-04-11 15:01:22 +02:00
Anatol Belski f62943edc8 fix version macro to check 2016-04-11 15:01:22 +02:00
Joe Watkins c0b821d2e9 handle dummy frame 2016-04-11 13:24:37 +01:00
Joe Watkins 707941413d Merge branch 'PHP-7.0' of https://github.com/php/php-src into PHP-7.0 2016-04-11 08:04:14 +01:00
Joe Watkins 028485ae69 fix calendar segfault 2016-04-11 08:03:15 +01:00
Anatol Belski 190db69109 update NEWS 2016-04-10 19:10:45 +02:00
Anatol Belski b4ab0effc7 Fixed bug #71998 Function pg_insert does not insert when column type = inet 2016-04-10 18:48:35 +02:00
Anatol Belski 58ea2ad489 Fixed bug #65480 No declaration for msgformat_fix_quotes() in msgformat.c or msgformat_attr.c 2016-04-09 19:11:28 +02:00
Xinchen Hui fcbd95930c Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0 2016-04-09 10:02:20 -07:00
Xinchen Hui 5db4d9a71c Fixed bug #71995 (Returning the same var twice from __sleep() produces broken serialized data) 2016-04-09 10:01:04 -07:00
Anatol Belski e33c26659e update NEWS 2016-04-09 18:52:59 +02:00
Anatol Belski ef17343b3c Fixed bug #66289 Locale::lookup incorrectly returns en or en_US if locale is empty 2016-04-09 18:24:42 +02:00
Lior Kaplan c6c44c3629 Enable configure without opcache-file and huge-code-pages
This doesn't chagne the default (yes for both features), but respects
--disable-opcache-file and --disable-huge-code-pages configure flags if given.
2016-04-09 15:57:57 +03:00
Lior Kaplan 403c3f95fe Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  opcache config.m4: Use = for comparison
2016-04-09 01:35:30 +03:00
Lior Kaplan c1f597d9a1 opcache config.m4: Use = for comparison 2016-04-08 22:38:07 +03:00
Anatol Belski 73815573e0 fix indent 2016-04-08 14:17:57 +02:00
Anatol Belski f691fe343c update NEWS 2016-04-08 13:51:29 +02:00
Anatol Belski 45d9efaac3 fix compat for ICU < 50 2016-04-08 12:48:26 +02:00
Anatol Belski 1541a55a4f Fixed bug #68893 Stackoverflow in datefmt_create 2016-04-08 12:31:19 +02:00
Daniel Persson f7600e17cb Added missing newline. 2016-04-08 12:31:19 +02:00
Daniel Persson 0030fa322f Changed to check for error with the new function that returns null if error is set 2016-04-08 12:31:19 +02:00
Daniel Persson e3b160bf86 Added function to check error and return null if error is set. 2016-04-08 12:31:19 +02:00
Daniel Persson ff2af89519 Added tests for bug 70451 and 70452 2016-04-08 12:31:19 +02:00
Xinchen Hui c45f7b97a3 Fixed bug #71986 (Nested foreach assign-by-reference creates broken variables) 2016-04-08 17:57:51 +08:00
Anatol Belski 94e889299b update NEWS 2016-04-08 11:01:42 +02:00
Anatol Belski 93f8eaf3b8 Fixed bug #70455 Missing constant: IntlChar::NO_NUMERIC_VALUE 2016-04-08 09:55:57 +02:00
Anatol Belski f042c5f726 update NEWS 2016-04-08 09:28:41 +02:00
Anatol Belski 49d31fa01d Fixed bug #71516 IntlDateFormatter losts locale if pattern is set via constructor 2016-04-08 08:59:43 +02:00
Xinchen Hui d242a8fb68 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 #71980
2016-04-07 19:29:49 +08:00
Xinchen Hui c85907682a Improved fix for #71940 2016-04-07 19:28:54 +08:00
Nikita Popov aad4ecebf8 Fixed bug #71980 2016-04-07 12:29:59 +02:00
Xinchen Hui 079239a7ce Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0
* 'PHP-7.0' of git.php.net:/php-src:
  Remove __halt_compiler from semi-reserved tokens
  Fixed Bug #71974 Trans sid will always be send, even if cookies are available
  Optimized array_fill(). This is a perfect function for fast creation of packed arrays.
  Fixed build
  fix merge mistake
  fix tests
  PostgreSQL's PDOStatement::getColumnMeta() fills in table's name.
  fix indent
  Fixed bug #71978 (Existence of return type hint affects other compatibility rules)
  fix test
  fix bug #71667 (emulate how mssql extension names "computed" columns)
  update NEWS
  add 32-bit specific variont for #62498
  skip test on 32-bit
  make opcache lockfile path configurable
  return zvals instead of strings, cast or not based on stringify attribute
  fix test
  add skip slow test
2016-04-07 13:58:00 +08:00
Xinchen Hui 7e042224a2 Fixed bug #71940 (Unserialize crushes on restore object reference) 2016-04-07 13:56:55 +08:00
Nikita Popov 5ab950cb2c Remove __halt_compiler from semi-reserved tokens
token_get_all() is not capable of dealing with this one correctly.
2016-04-07 05:52:32 +02:00
Yasuo Ohgaki 6467a4eb36 Fixed Bug #71974 Trans sid will always be send, even if cookies are available 2016-04-07 10:26:05 +09:00
Dmitry Stogov b31240f995 Optimized array_fill(). This is a perfect function for fast creation of packed arrays. 2016-04-07 01:01:11 +03:00
Dmitry Stogov 088f55ae74 Fixed build 2016-04-07 00:59:21 +03:00
Anatol Belski 6489edb958 fix merge mistake 2016-04-06 18:05:39 +02:00
Anatol Belski 26f9aa7211 fix tests 2016-04-06 17:43:49 +02:00
Petr Sýkora aeb9c81c09 PostgreSQL's PDOStatement::getColumnMeta() fills in table's name. 2016-04-06 17:43:49 +02:00
Anatol Belski 052c1d337c fix indent 2016-04-06 17:43:49 +02:00
Dmitry Stogov e9d65160e8 Fixed bug #71978 (Existence of return type hint affects other compatibility rules) 2016-04-06 17:17:10 +03:00
Anatol Belski ea64d290fe fix test 2016-04-06 14:44:23 +02:00
Adam Baratz ed3edc2f05 fix bug #71667 (emulate how mssql extension names "computed" columns) 2016-04-06 14:41:55 +02:00
Anatol Belski c256a8c25e update NEWS 2016-04-06 14:13:43 +02:00
Anatol Belski 4f7d89a335 add 32-bit specific variont for #62498 2016-04-06 14:05:25 +02:00
Anatol Belski 02fc9cb31f skip test on 32-bit
The Postgres INT8 datatype is handled as string on 32-bit
2016-04-06 13:55:32 +02:00
Fatih ACAR d54eafb349 make opcache lockfile path configurable
Signed-off-by: William Dauchy <william@gandi.net>
Signed-off-by: Baptiste Daroussin <baptiste.daroussin@gandi.net>
Signed-off-by: Fatih Acar <fatih.acar@gandi.net>
2016-04-06 13:29:52 +02:00
Adam Baratz 1e1500a2bc return zvals instead of strings, cast or not based on stringify attribute 2016-04-06 12:18:53 +02:00
Anatol Belski 354a682c38 fix test 2016-04-06 08:21:10 +02:00
Anatol Belski fd9137c00c add skip slow test 2016-04-06 08:18:32 +02:00
Xinchen Hui 4e1d435bd1 Fixed order 2016-04-06 10:21:05 +08:00
Xinchen Hui e95782ed5e Fixed bug #71969 (str_replace returns an incorrect resulting array after a foreach by reference) 2016-04-06 10:19:24 +08:00
Anatol Belski 6ae3915eee update NEWS 2016-04-05 18:21:25 +02:00
Adam Baratz 8a92fed532 Add driver-specific attributes for controlling calls to dbsetlogintime() and dbsettime() 2016-04-05 18:18:37 +02:00
Anatol Belski df8f927446 update NEWS 2016-04-05 15:12:12 +02:00
Anatol Belski c2cb4664bc fix and extend test 2016-04-05 15:06:17 +02:00
Joe Bylund e10257ba80 Don't roundtrip to the database to get the column type if you already know it
add_assoc_string now takes just three args

nikic's fix to move pqclear outside the if, would be a possible memory leak inside the if

(joe) check behavior of getColumnMeta
2016-04-05 15:03:04 +02:00
DQNEO ea0598962f remove description for apache 1.3 2016-04-05 12:13:38 +02:00
Anatol Belski dedc9a4200 update NEWS 2016-04-05 11:55:36 +02:00
Anatol Belski bbaa868c29 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2016-04-05 11:55:03 +02:00
Anatol Belski 5ed05bc686 update NEWS 2016-04-05 11:52:53 +02:00
Anatol Belski d10a8e4804 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Use STR_EMPTY_ALLOC macro instead
  Fix DateInterval::format segfault
2016-04-05 11:24:23 +02:00
Thomas Punt 1aea777349 Use STR_EMPTY_ALLOC macro instead 2016-04-05 11:18:14 +02:00
Thomas Punt 40f14bad33 Fix DateInterval::format segfault 2016-04-05 11:18:14 +02:00
Matteo Beccati 4090e709aa Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed bug #71447 (Quotes inside comments not properly handled)
  Fixed a few PDO tests to conform to PDO Common standards
  news entry #69537
  Fix #69537: __debugInfo with empty string for key gives error

Conflicts:
	Zend/zend_compile.c
2016-04-05 00:07:02 +02:00
Matteo Beccati 30925cd498 Fixed bug #71447 (Quotes inside comments not properly handled) 2016-04-04 23:50:28 +02:00
Matteo Beccati 9a87108eca Fixed a few PDO tests to conform to PDO Common standards 2016-04-04 23:43:17 +02:00
Anatol Belski d2948d4b71 update NEWS 2016-04-04 17:42:06 +02:00
Adam Baratz 9fcfc18ca9 Fix #71943: dblib_handle_quoter needs to allocate an extra byte 2016-04-04 17:33:49 +02:00
Joe Watkins 9a65c69c62 news entry #71428 2016-04-04 10:30:23 +01:00
Joe Watkins 0797cfdda9 news entry #69537 2016-04-04 10:23:19 +01:00
Joe Watkins cd038cc5eb news entry #69537 2016-04-04 10:22:13 +01:00
Joe Watkins 922a4048e4 news entry 71609 2016-04-04 10:20:26 +01:00
Joe Watkins 4d5bb45b3b magical notation is magical 2016-04-04 09:33:20 +01:00
Joe Watkins 860c55466e move this to standard [ci skip] 2016-04-04 09:26:17 +01:00
Joe Watkins c1dec143d6 news updates 2016-04-04 09:21:06 +01:00
Joe Watkins 9a38b2dbce Merge branch 'PHP-7.0' of https://github.com/php/php-src into PHP-7.0 2016-04-03 12:41:23 +01:00
Joe Watkins 14e4c610e9 Fix #69537: __debugInfo with empty string for key gives error 2016-04-03 12:40:29 +01:00
Joe Watkins 91c10662c8 fix #69537: __debugInfo with empty string for key gives error 2016-04-03 12:38:25 +01:00
Elizabeth Marie Smith 4df5f79ab5 Fix ODBC bug for varchars returning with length zero 2016-04-01 17:11:58 +02:00
Xinchen Hui 5b1bb41c0b Fixed bug #71930 (_zval_dtor_func: Assertion `(arr)->gc.refcount <= 1' failed) 2016-04-01 22:27:29 +08:00
Joe Watkins 034e8ec02e fix #71287 (substr_replace bug when length type is string) 2016-03-31 17:10:12 +01:00
Julien Pauli 8a4d164c2b Typo in NEWS 2016-03-31 17:45:07 +02:00
Joe Watkins d9e4510224 remove unused params || woops 2016-03-31 12:51:00 +01:00
Joe Watkins 3b13206aa9 Merge branch 'PHP-7.0' of https://github.com/php/php-src into PHP-7.0 2016-03-31 12:40:15 +01:00
Joe Watkins 233115ea23 fix #71609: Segmentation fault on ZTS with gethostbyname 2016-03-31 12:39:01 +01:00
Anatol Belski e6bb7eb3aa Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix borked mainstream patch
  5.5.35 now
2016-03-31 01:38:22 +02:00
Anatol Belski a00c2b1bf5 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix borked mainstream patch
  5.5.35 now
2016-03-31 01:36:47 +02:00
Anatol Belski 4b0b1cec00 fix borked mainstream patch 2016-03-31 01:33:38 +02:00
Anatol Belski 9dc6c33740 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix test to not to cause false positives
2016-03-31 01:30:23 +02:00
Anatol Belski ed707a5217 fix test to not to cause false positives 2016-03-31 01:29:05 +02:00
Lior Kaplan 3b26af59d4 Align NEWS entry format 2016-03-31 01:01:11 +03:00
Lior Kaplan 53ce826cdd Merge branch 'PHP-5.6' into PHP-7.0 2016-03-31 00:54:43 +03:00
Lior Kaplan cef40c0c3f Align NEWS entry format 2016-03-31 00:52:53 +03:00
Nikita Popov b1e854f776 Fix bug #71334
Always duplicate the array before doing a sort with user-defined
comparison function, to avoid access to the intermediate
inconsistent state.

I've also dropped the "array modification" warning, as protection
against modifications is no longer relevant if we're always working
on a copy anyway.

This also required some changes to how SplArray forwards calls to
sorting functions.
2016-03-30 22:49:27 +02:00
Ferenc Kovacs 1866ab2d1e Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2016-03-30 22:29:00 +02:00
Ferenc Kovacs abd59c0e40 update NEWS 2016-03-30 22:28:28 +02:00
Nikita Popov f95679885f Fix __invoke comparison in closure_get_method
It compared against the wrong variable. Fixed this by getting rid
of lc_name entirely and use equals_literal_ci instead.
2016-03-30 18:32:00 +02:00
Matteo Beccati 3bfe1c55ae Removed shmop test leaking an shm segment 2016-03-30 10:00:28 +02:00
Nikita Popov ed06d130f7 Fixed bug #71922 2016-03-29 19:29:19 +02:00
Julien Pauli f0120ff878 5.5.35 now 2016-03-29 18:11:03 +02:00
Anatol Belski c7f7139985 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix dir separator in test
2016-03-29 14:20:30 +02:00
Anatol Belski 23d0065744 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix dir separator in test
2016-03-29 14:19:35 +02:00
Anatol Belski 551423c642 fix dir separator in test 2016-03-29 14:18:25 +02:00
Anatol Belski dd0a96ae70 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed bug #71527 Buffer over-write in finfo_open with malformed magic file
  Fixed bug #71527 Buffer over-write in finfo_open with malformed magic file
2016-03-29 13:12:47 +02:00
Anatol Belski 5272184a1e Fixed bug #71527 Buffer over-write in finfo_open with malformed magic file
The actual fix is applying the upstream patch from
https://github.com/file/file/commit/6713ca45e7757297381f4b4cdb9cf5e624a9ad36
2016-03-29 13:11:25 +02:00
Anatol Belski 84990ab346 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #71527 Buffer over-write in finfo_open with malformed magic file
2016-03-29 13:11:17 +02:00
Anatol Belski fe13566c93 Fixed bug #71527 Buffer over-write in finfo_open with malformed magic file
The actual fix is applying the upstream patch from
https://github.com/file/file/commit/6713ca45e7757297381f4b4cdb9cf5e624a9ad36
2016-03-29 13:10:39 +02:00
Joe Watkins 5074fd9c7c Merge branch 'PHP-7.0' of https://github.com/php/php-src into PHP-7.0 2016-03-29 11:34:58 +01:00
Joe Watkins d12ed0c7fa remove unused param 2016-03-29 11:34:18 +01:00
Anatol Belski 3b08638340 update NEWS 2016-03-29 12:05:36 +02:00
Xinchen Hui f5bdc137fb 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 #71704 php_snmp_error() Format String Vulnerability
  Fixed bug #71906: AddressSanitizer: negative-size-param (-1) in mbfl_strcut
  Updated to version 2016.3 (2016c)
  Fixed bug #71906: AddressSanitizer: negative-size-param (-1) in mbfl_strcut
  Fixed bug #71527 Buffer over-write in finfo_open with malformed magic file
  Fix bug #71798 - Integer Overflow in php_raw_url_encode
  update NEWS
  Disable huge pages in the Zend allocator by default As per the discussion on internals, this is an expert feature that needs special system-level configuration and care.
  Added ability to disable huge pages in Zend Memeory Manager through the environment variable USE_ZEND_ALLOC_HUGE_PAGES=0.
  Fix bug #71860: Require valid paths for phar filenames
  Fix bug #71860: Require valid paths for phar filenames
  update NEWS
  Fixed bug #71704 php_snmp_error() Format String Vulnerability
  Merge branch 'PHP-5.6' into PHP-7.0
  Updated to version 2016.2 (2016b)
  update libs versions
  set RC1 versions
  Going for 5.5.34
2016-03-29 18:02:00 +08:00
Xinchen Hui 256593abcf Update tests 2016-03-29 17:52:58 +08:00
Anatol Belski f2ca3c6036 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
2016-03-29 11:26:09 +02:00
Anatol Belski 6afa41cf80 Merge remote-tracking branch 'origin/PHP-7.0.5' into PHP-7.0
* origin/PHP-7.0.5:
  Fixed bug #71704 php_snmp_error() Format String Vulnerability
  Fixed bug #71906: AddressSanitizer: negative-size-param (-1) in mbfl_strcut
  Updated to version 2016.3 (2016c)
  Fixed bug #71906: AddressSanitizer: negative-size-param (-1) in mbfl_strcut
  Fixed bug #71527 Buffer over-write in finfo_open with malformed magic file
  Fix bug #71798 - Integer Overflow in php_raw_url_encode
  update NEWS
  Disable huge pages in the Zend allocator by default As per the discussion on internals, this is an expert feature that needs special system-level configuration and care.
  Added ability to disable huge pages in Zend Memeory Manager through the environment variable USE_ZEND_ALLOC_HUGE_PAGES=0.
  Fix bug #71860: Require valid paths for phar filenames
  Fix bug #71860: Require valid paths for phar filenames
  update NEWS
  Fixed bug #71704 php_snmp_error() Format String Vulnerability
  Merge branch 'PHP-5.6' into PHP-7.0
  Updated to version 2016.2 (2016b)
  update libs versions
  set RC1 versions
  Going for 5.5.34
2016-03-29 11:24:33 +02:00
Xinchen Hui 2e6d70787c Fixed bug #71914 (Reference is lost in "switch") 2016-03-29 17:14:36 +08:00
Joe Watkins dd70c39556 fix bug #71428: Validation type inheritance with = NULL 2016-03-29 09:57:51 +01:00
Joe Watkins 3f56dfe866 Bug #71428 work ... hopefully, fix drupal 8 2016-03-29 09:36:08 +01:00
Stanislav Malyshev 67fbb06311 Merge branch 'PHP-5.5' into PHP-7.0.5
* PHP-5.5:
  Fixed bug #71704 php_snmp_error() Format String Vulnerability
  Fixed bug #71906: AddressSanitizer: negative-size-param (-1) in mbfl_strcut
  Fixed bug #71906: AddressSanitizer: negative-size-param (-1) in mbfl_strcut
  Fix bug #71798 - Integer Overflow in php_raw_url_encode
  Fix bug #71860: Require valid paths for phar filenames
  Going for 5.5.34

Conflicts:
	configure.in
	ext/phar/phar_object.c
	ext/phar/tests/badparameters.phpt
	ext/phar/tests/create_path_error.phpt
	ext/phar/tests/pharfileinfo_construct.phpt
	ext/snmp/snmp.c
	ext/standard/url.c
	main/php_version.h
2016-03-28 23:55:05 -07:00
Stanislav Malyshev 57d170aae0 Merge remote-tracking branch 'security/PHP-7.0.5' into PHP-7.0.5
* security/PHP-7.0.5:
  Fixed bug #71527 Buffer over-write in finfo_open with malformed magic file
  Fix bug #71860: Require valid paths for phar filenames
  update NEWS
  Fixed bug #71704 php_snmp_error() Format String Vulnerability
2016-03-28 23:49:03 -07:00
Stanislav Malyshev cc7631dd08 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #71704 php_snmp_error() Format String Vulnerability
2016-03-28 23:45:15 -07:00
Anatol Belski 9c19a08b9d Fixed bug #71704 php_snmp_error() Format String Vulnerability
Conflicts:
	ext/snmp/snmp.c
2016-03-28 23:42:19 -07:00
Stanislav Malyshev a18b1f74fa Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #71906: AddressSanitizer: negative-size-param (-1) in mbfl_strcut
2016-03-28 23:30:14 -07:00
Stanislav Malyshev 3dd82caf57 Merge branch 'PHP-5.5.34' into PHP-5.5
* PHP-5.5.34:
  Fixed bug #71906: AddressSanitizer: negative-size-param (-1) in mbfl_strcut
2016-03-28 23:29:45 -07:00
Stanislav Malyshev 62da5cdf3d Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #71906: AddressSanitizer: negative-size-param (-1) in mbfl_strcut
  Fix bug #71798 - Integer Overflow in php_raw_url_encode
  Fix bug #71860: Require valid paths for phar filenames
  Going for 5.5.34

Conflicts:
	configure.in
	ext/phar/tests/create_path_error.phpt
	main/php_version.h
2016-03-28 23:21:15 -07:00
Stanislav Malyshev f8dd10508b Fixed bug #71906: AddressSanitizer: negative-size-param (-1) in mbfl_strcut 2016-03-28 23:15:16 -07:00
Derick Rethans 2d112e1378 Updated to version 2016.3 (2016c) 2016-03-28 15:31:51 +02:00
Joe Watkins ee9a78a033 work on #71428 2016-03-28 11:54:25 +01:00
Stanislav Malyshev 64f42c73ef Fixed bug #71906: AddressSanitizer: negative-size-param (-1) in mbfl_strcut 2016-03-28 01:22:37 -07:00
Anatol Belski e93c6910fc Fixed bug #71527 Buffer over-write in finfo_open with malformed magic file
The actual fix is applying the upstream patch from
https://github.com/file/file/commit/6713ca45e7757297381f4b4cdb9cf5e624a9ad36
2016-03-28 00:45:19 +02:00
Stanislav Malyshev 95433e8e33 Fix bug #71798 - Integer Overflow in php_raw_url_encode 2016-03-27 14:22:19 -07:00
Joe Watkins 28f66763a4 fix #70189 (SAPI sends empty Content-Type when default_mimetype is empty) 2016-03-27 06:50:11 +01:00
Joe Watkins 32df2210d7 my commits are bad, and I feel bad (test for bug #71414) 2016-03-26 23:59:46 +00:00
Joe Watkins 4327370d13 fix #71414 (Interface method override inherited method and implemented in a trait causes fatal error) 2016-03-26 23:47:31 +00:00
Joe Watkins 1a75cd29a2 add test for bug 2016-03-26 11:15:08 +00:00
Joe Watkins 373da7aa6f fix standard object handler for properties when type == BP_VAR_IS 2016-03-26 11:15:08 +00:00
Nikita Popov bd90f5507f Merge branch 'PHP-5.6' into PHP-7.0
Conflicts:
	ext/standard/crypt.c
2016-03-25 20:23:04 +01:00
Nikita Popov 54da966883 Fixed bug #67512 2016-03-25 20:18:46 +01:00
Xinchen Hui 1929fc9b16 Fixed bug #71891 (header_register_callback() and register_shutdown_function())
Actually, this fixed the memleak not the behavior(it is expected
behavior that "shutdown" is not outputed)
2016-03-25 12:34:22 +08:00
Derick Rethans 70878a92b1 Updated to version 2016.3 (2016c) 2016-03-24 11:09:07 +00:00
Derick Rethans 35b19d8dcc Empty merge 2016-03-24 11:09:06 +00:00
Derick Rethans c4681ec8e1 Updated to version 2016.3 (2016c) 2016-03-24 11:09:05 +00:00
Anatol Belski d6eff6655c update NEWS 2016-03-23 12:32:16 +01:00
Anatol Belski 4bbc811ff4 update NEWS 2016-03-23 12:28:48 +01:00
Rasmus Lerdorf 06c2b31866 Disable huge pages in the Zend allocator by default
As per the discussion on internals, this is an expert feature
that needs special system-level configuration and care.
2016-03-23 12:23:35 +01:00
Dmitry Stogov 75dd4a7a50 Added ability to disable huge pages in Zend Memeory Manager through the environment variable USE_ZEND_ALLOC_HUGE_PAGES=0. 2016-03-23 12:23:03 +01:00
Xinchen Hui a3946de339 Fixed Bug #71884 (Null pointer deref (segfault) in stream_context_get_default) 2016-03-23 16:16:26 +08:00
Anatol Belski 241ba9dcb1 if there's no JIT support, no RINIT is really needed 2016-03-22 21:42:21 +01:00
Rasmus Lerdorf 1efcdaf092 Disable huge pages in the Zend allocator by default
As per the discussion on internals, this is an expert feature
that needs special system-level configuration and care.
2016-03-22 08:04:53 -07:00
Xinchen Hui b49ec68134 Update test script 2016-03-22 11:28:19 +08:00
Nikita Popov dc842bbf8d Fixed bug #71871 2016-03-21 22:49:18 +01:00
Anatol Belski e988239634 decrease the default PCRE JIT stack to 64K 2016-03-21 18:59:39 +01:00
Anatol Belski e23a41225f Increase PCRE JIT stack size
It is done by implementing the custom stack usage. This makes the
JIT with mode on more compatible with the JIT mode off. Until now, the
default PCRE JIT stack was used which is 32kb big by default. There
are situations where some patterns would fail with JIT while working
correctly without JIT.

The starting size of the JIT stack is still set to 32kb, while the
max is set to the permissive 256kb (and can be increased up to 1mb).
As until now no suchlike bugs regarding JIT were reported, it is expected,
that the stack usage will stay by 32kb in most cases. Though providing
the custom stack, applications will have more room for some sporadic
stack increase, thus more compatibility.
2016-03-21 17:31:26 +01:00
Julien Pauli cb240fe711 Updated NEWS 2016-03-21 15:40:01 +01:00
Julien Pauli 5ba7b9af1b Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Updated NEWS
  Reworked Fix bug #52098
  Fix bug #52098

Conflicts:
	ext/pdo/pdo_dbh.c
	ext/pdo/pdo_stmt.c
2016-03-21 15:39:48 +01:00
Julien Pauli abbe1551d6 Updated NEWS 2016-03-21 15:26:21 +01:00
Julien Pauli d3d64b7c62 Reworked Fix bug #52098 2016-03-21 15:23:18 +01:00
Daniel Persson e541cd8e6b Fix bug #52098 2016-03-21 15:04:11 +01:00
Xinchen Hui d26ca89402 array_dup should not copy the nApplyCount 2016-03-21 19:19:05 +08:00
Xinchen Hui 9712a974be Also protects object to array cast 2016-03-21 19:12:50 +08:00
Xinchen Hui a9a46f17be Update NEWS 2016-03-21 16:44:30 +08:00
Xinchen Hui ead0dfc3c9 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Update NEWS for efacdc3
  FIX #71831: CURLOPT_NOPROXY applied as long instead of string
2016-03-21 16:43:55 +08:00
Xinchen Hui c9c8e70463 Update NEWS for efacdc3 2016-03-21 16:43:30 +08:00
Xinchen Hui 056459dc9d Merge branch 'PHP-5.6' of https://github.com/msierks/php-src into PHP-5.6
* 'PHP-5.6' of https://github.com/msierks/php-src:
  FIX #71831: CURLOPT_NOPROXY applied as long instead of string
2016-03-21 16:39:22 +08:00
Xinchen Hui 65ae7440b0 Merge branch 'bug71835' of https://github.com/bukka/php-src into PHP-7.0
* 'bug71835' of https://github.com/bukka/php-src:
  Fix bug #71835 (json_encode sometimes incorrectly detects recursion with JsonSerializable)
2016-03-21 16:03:16 +08:00
Stanislav Malyshev c4517b2a5e Fix bug #71750: use zend_string_safe_alloc for calculated allocations 2016-03-20 22:39:17 -07:00
Stanislav Malyshev 28a6ed9f9a Fix bug #71735: Double-free in SplDoublyLinkedList::offsetSet 2016-03-20 22:29:08 -07:00
Stanislav Malyshev 72281f29dd Fix bug #71860: Require valid paths for phar filenames 2016-03-20 21:33:11 -07:00
Stanislav Malyshev 1e9b175204 Fix bug #71860: Require valid paths for phar filenames 2016-03-20 21:24:12 -07:00
Nikita Popov f3309173f9 Fixed bug #62059 2016-03-20 18:17:44 +01:00
Nikita Popov 12f2665df8 Merge branch 'PHP-5.6' into PHP-7.0
Conflicts:
	ext/spl/spl_observer.c
2016-03-20 17:48:06 +01:00
Nikita Popov cc3cdd0057 Fixed bug #67582 2016-03-20 17:46:12 +01:00
Jakub Zelenka 7e069daa89 Fix bug #71835 (json_encode sometimes incorrectly detects recursion with JsonSerializable) 2016-03-20 15:56:27 +00:00
Nikita Popov a175aa9dca Fixed bug #71731
The read_dimension() handler in BP_VAR_IS mode will now call
offsetExists() before caling offsetGet(). This has always been a
problem, however recently the issue has been exacerbated, because
the null-coalesce operator ?? makes it visible for non-nested
array accesses.

Also fixes #69659.
2016-03-20 13:35:00 +01:00
Nikita Popov 1f6d27d3d2 Fix use of UNDEF instead of NULL in read_dimension 2016-03-20 13:33:17 +01:00
Xinchen Hui 9564998e49 Fixed Bug #71859 (zend_objects_store_call_destructors operates on realloced memory, crashing) 2016-03-20 04:52:57 -07:00
Nikita Popov 8023204d21 Fixed bug #52339
Autoloader 101: Don't throw if you fail. PHP will throw for you.
2016-03-18 20:28:58 +01:00
Nikita Popov a2522efa9f Add extra ArrayObject::sort() test 2016-03-18 19:59:08 +01:00
Nikita Popov 094c808374 Fix bug #71838 2016-03-18 19:58:52 +01:00
Nikita Popov fd95555107 Fix ZEND_DEBUG condition 2016-03-18 19:31:34 +01:00
Michael Sierks efacdc3511 FIX #71831: CURLOPT_NOPROXY applied as long instead of string
The CURLOPT_NOPROXY option value is converted to a long before
being applied as a curl option. This causes the option to have
no effect. This patch changes this conversion to a string.
2016-03-18 07:29:01 -05:00
Dmitry Stogov 69c9be5c99 typo 2016-03-18 10:27:46 +03:00
Dmitry Stogov 11594e86b8 typo 2016-03-18 10:25:48 +03:00
Xinchen Hui 5b8d0dc6ae Fixed pdo_stmt.c: zval* being passed into zend_parse_parameters_ex 2016-03-18 11:50:03 +08:00
Dmitry Stogov 945a661912 Added ability to disable huge pages in Zend Memeory Manager through the environment variable USE_ZEND_ALLOC_HUGE_PAGES=0. 2016-03-17 22:43:42 +03:00
Anatol Belski 28b6f0232b fix and update NEWS 2016-03-17 19:04:56 +01:00
Anatol Belski d529c3358c Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix and update NEWS
2016-03-17 19:03:46 +01:00
Anatol Belski b8c9c92d44 fix and update NEWS 2016-03-17 19:02:08 +01:00
Xinchen Hui a2ca4558b5 Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0 2016-03-17 07:57:22 -07:00
Anatol Belski ef8d6435a2 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Backport patch for bug #71820
2016-03-17 15:55:37 +01:00
Xinchen Hui 93499bfd8a Fixed test & ZEND_BOOL should result TMP_VAR 2016-03-17 07:55:25 -07:00
Xinchen Hui 345ecd9822 Fixed #71837 (Wrong arrays behaviour) 2016-03-17 07:41:41 -07:00
Anatol Belski 1b632cfe83 Backport patch for bug #71820
Rev b4eedd128b
2016-03-17 14:28:58 +01:00
Xinchen Hui eb405623ec Merge branch 'PHP-5.6' of git.php.net:/php-src into PHP-5.6
* 'PHP-5.6' of git.php.net:/php-src:
  fix NEWS
  NEWS
  Fix Bug #63171 	Script hangs after max_execution_time
2016-03-17 21:27:23 +08:00
Xinchen Hui 383dde5b15 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
  NEWS
  NEWS
  Fix Bug #63171 	Script hangs after max_execution_time
  Fixed bug #71820 pg_fetch_object bind parameters before call constructor
2016-03-17 21:26:14 +08:00
Xinchen Hui 910e6dc6b8 Fixed for master 2016-03-17 21:10:08 +08:00
Remi Collet e7f74a3f9b Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix NEWS
2016-03-17 13:53:52 +01:00
Remi Collet b5b1ba850a fix NEWS 2016-03-17 13:53:42 +01:00
Remi Collet 9073208f6c NEWS 2016-03-17 13:44:28 +01:00
Remi Collet 2291ebc0ea Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  NEWS
  Fix Bug #63171 	Script hangs after max_execution_time
2016-03-17 13:42:34 +01:00
Remi Collet d513b4cde5 NEWS 2016-03-17 13:40:42 +01:00
Remi Collet 407ad28ae5 Fix Bug #63171 Script hangs after max_execution_time
If aborted via timer expiration, don't try to call any unixODBC function
which may hangs because of internal locks
2016-03-17 13:38:45 +01:00
Xinchen Hui aef22ac1c1 Remove unnecessary pattern 2016-03-17 20:21:36 +08:00
Xinchen Hui 041a01fd6c Fixed for PHP7 2016-03-17 20:20:01 +08:00
Xinchen Hui 820b0aa2ab Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed bug #71843 (null ptr deref ZEND_RETURN_SPEC_CONST_HANDLER)
2016-03-17 19:54:33 +08:00
Xinchen Hui 8e2f658f49 Fixed bug #71843 (null ptr deref ZEND_RETURN_SPEC_CONST_HANDLER) 2016-03-17 19:54:19 +08:00
Anatol Belski b4eedd128b Fixed bug #71820 pg_fetch_object bind parameters before call constructor
If we want to fetch into an object of a custom class that implemens
__set handler, the corstructor has to be called first. The data
passed to the constructor can be possibly required in __set handler.
2016-03-17 12:41:55 +01:00
Xinchen Hui dae086040e Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed test script
2016-03-17 17:07:07 +08:00
Xinchen Hui 6d4aec029a Fixed test script 2016-03-17 17:06:56 +08:00
Xinchen Hui e12456603a Remove typo 2016-03-17 15:27:36 +08:00
Xinchen Hui b8f0cb063f Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed test script
2016-03-17 15:23:53 +08:00
Xinchen Hui ead7632cf9 Fixed test script 2016-03-17 15:23:44 +08:00
Xinchen Hui 47f3b3df45 Update NEWS 2016-03-17 15:23:21 +08:00
Xinchen Hui fe1a3fc08b Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed bug #71841 (EG(error_zval) is not handled well)
  Fixed bug #71840 (Unserialize accepts wrongly data)

Conflicts:
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
	ext/standard/var_unserializer.c
2016-03-17 15:22:44 +08:00
Xinchen Hui 5546f8be56 Fixed bug #71841 (EG(error_zval) is not handled well) 2016-03-17 15:16:47 +08:00
Xinchen Hui 6f241f5fad Fixed bug #71840 (Unserialize accepts wrongly data) 2016-03-17 15:15:28 +08:00
Ferenc Kovacs fba1c7629c Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  prepare for 5.6.20RC1
2016-03-17 01:47:37 +01:00
Ferenc Kovacs 14f4848fb0 prepare for 5.6.20RC1 2016-03-17 01:46:00 +01:00
Andrey Hristov fa4addd409 More email fixing 2016-03-16 10:54:56 +01:00
Andrey Hristov f2ab731a8c Fix emails in headers. @mysql.com addresses are no more since many years. 2016-03-16 10:24:52 +01:00
Anatol Belski 884c7d181f update NEWS 2016-03-16 09:50:51 +01:00
Anatol Belski 6e25966544 Fixed bug #71704 php_snmp_error() Format String Vulnerability 2016-03-16 09:48:40 +01:00
Remi Collet ffe82dd775 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix #ifdef usage
2016-03-16 08:11:50 +01:00
Remi Collet 46293ed6d4 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix #ifdef usage
2016-03-16 07:18:09 +01:00
Remi Collet 478c807128 fix #ifdef usage 2016-03-16 07:17:49 +01:00
Derick Rethans 89919b5ec5 Updated to version 2016.2 (2016b) 2016-03-15 11:17:57 +01:00
Derick Rethans ba71144b8c Updated to version 2016.2 (2016b) 2016-03-15 09:14:11 +00:00
Derick Rethans a1c6481c63 Empty merge 2016-03-15 09:14:10 +00:00
Derick Rethans ddc62f2e8b Updated to version 2016.2 (2016b) 2016-03-15 09:14:09 +00:00
Anatol Belski 68a29ccb84 update libs versions 2016-03-15 09:51:47 +01:00
Anatol Belski ba5b98db8c update libs versions 2016-03-15 09:44:05 +01:00
Anatol Belski 6ec7ef39f4 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update libs versions
2016-03-15 09:43:08 +01:00
Anatol Belski 73b9941622 update libs versions 2016-03-15 09:41:34 +01:00
Anatol Belski 7fead8e8f5 set RC1 versions 2016-03-15 08:32:03 +01:00
Anatol Belski 2921c0e3f6 prepare next 2016-03-15 08:24:41 +01:00
Anatol Belski 0ce801a587 update NEWS 2016-03-15 07:11:21 +01:00
Sean DuBois 68ebfc87ad Fix bug #71624, PHP_MODE_PROCESS_STDIN (CLI SAPI called with '-R') did not properly set $argi and $argn 2016-03-15 07:02:40 +01:00
Anatol Belski 84651b32eb fix uninitialized value 2016-03-15 06:43:29 +01:00
Anatol Belski 704a9aeea7 fix pointer truncation on 64 bit 2016-03-14 16:44:27 +01:00
Anatol Belski ab7764d99b Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix test
2016-03-14 15:58:05 +01:00
Anatol Belski beda05269c fix test
Many warnings won't appear with libxml2 >= 2.9.3 because in many
cases libxml2 2.9.3 will just abort processing.
2016-03-14 15:53:02 +01:00
Yasuo Ohgaki ec12385f04 Update NEWS
Fixed Bug #71754 Regression in PHP7.0: trivial script segfaults php-cgi
    Fixed Bug #71683 Null pointer dereference in zend_hash_str_find_bucket
    Fixed Bug #71599 trans sid handling rework broke interaction with cookies

    All of these bugs are caused by git global change in PHP-7.0.
2016-03-12 08:52:16 +09:00
Yasuo Ohgaki ca61f5954b Fixed Bug #71754 Regression in PHP7.0: trivial script segfaults php-cgi
Fixed Bug #71683 Null pointer dereference in zend_hash_str_find_bucket
Fixed Bug #71599 trans sid handling rework broke interaction with cookies

All of these bug is caused by git global change in PHP-7.0.
2016-03-12 08:40:37 +09:00
Yasuo Ohgaki 50fca7a02a Fixed Bug #71683 Null pointer dereference in zend_hash_str_find_bucket 2016-03-12 08:15:47 +09:00
Nikita Popov 02743f43c2 Fixed bug #71806 2016-03-11 22:45:38 +01:00
Grigorii Sokolik ccc5150f15 Fix bug #71767 2016-03-11 22:27:48 +01:00
Anatol Belski fca831e8ad update NEWS 2016-03-11 14:23:34 +01:00
Anatol Belski 884f3f0afd Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2016-03-11 14:23:07 +01:00
Anatol Belski 9d02e3b97e update NEWS 2016-03-11 14:22:11 +01:00
Anatol Belski d26d80ab75 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix DatePeriod::getEndDate() segfault
2016-03-11 14:12:54 +01:00
Thomas Punt f3f5a07aa5 Fix DatePeriod::getEndDate() segfault 2016-03-11 14:08:48 +01:00
Anatol Belski 741bfe3932 fix build with clang on Winodws 2016-03-10 15:30:20 +01:00
Anatol Belski 8b5d09a195 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix error condition, part of bug #71753
2016-03-10 11:39:16 +01:00
Anatol Belski 8cd903ea68 fix error condition, part of bug #71753 2016-03-10 11:35:50 +01:00
Dmitry Stogov 99c44458da Merge branch 'PHP-7.0' of git.php.net:php-src into PHP-7.0
* 'PHP-7.0' of git.php.net:php-src:
  tsrm_win32_get_path_sid_key might returns NULL (Partially fix bug #71752)
2016-03-10 13:34:41 +03:00
Dmitry Stogov f8506c062f More effecient fix for bug #71756 2016-03-10 13:33:36 +03:00
Anatol Belski 4d4c6cf14e Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  tsrm_win32_get_path_sid_key might returns NULL (Partially fix bug #71752)
2016-03-10 09:35:55 +01:00
Xinchen Hui 67f0770036 tsrm_win32_get_path_sid_key might returns NULL (Partially fix bug #71752)
cherry-picked from 7d5f71b0b1
2016-03-10 09:33:39 +01:00
Anatol Belski 3edd33083c fix invalid pointer on 64-bit 2016-03-10 08:45:29 +01:00
Xinchen Hui 753bbad535 Useless check (part of #71753) 2016-03-10 15:43:22 +08:00
Xinchen Hui a0fac47364 object->ce should not be NULL 2016-03-10 15:26:15 +08:00
Xinchen Hui 351201bc7b Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed typo (partially fix for #71753)

Conflicts:
	ext/standard/uuencode.c
2016-03-10 15:23:40 +08:00
Xinchen Hui 915a3762ef Fixed typo (partially fix for #71753) 2016-03-10 15:22:34 +08:00
Xinchen Hui c3cf6f2a68 emalloc never returns NULL (partially fix for #71753) 2016-03-10 15:15:26 +08:00
Xinchen Hui 675c295722 Improve the codes (FETCH_DIM_R/IS is read context, we should not expose IS_REFERENCE) 2016-03-10 15:09:51 +08:00
Xinchen Hui 98c625a31c Fixed bug #71754 (Regression in PHP7.0: trivial script segfaults php-cgi) 2016-03-10 15:02:10 +08:00
Xinchen Hui 9833c76d3f Bug #71756 (Call-by-reference widens scope to uninvolved functions when used in switch) 2016-03-10 14:58:10 +08:00
Xinchen Hui 7d5f71b0b1 tsrm_win32_get_path_sid_key might returns NULL (Partially fix bug #71752) 2016-03-10 14:24:13 +08:00
Nikita Popov 5a6da79fd0 Fix bug #71659 2016-03-09 23:00:53 +01:00
Anatol Belski 86229f9943 fix SKIPIF sections 2016-03-09 14:28:38 +01:00
Anatol Belski a2022fd82a Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix directory separator
2016-03-09 14:17:30 +01:00
Anatol Belski a1d1f54b42 fix directory separator 2016-03-09 14:16:29 +01:00
Xinchen Hui 9aa73d3800 Fixed bug #71729 (Possible crash in zend_bin_strtod, zend_oct_strtod, zend_hex_strtod) 2016-03-09 12:16:24 +08:00
Anatol Belski 7a4c2fa829 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix regression introduced in 5683b6fa39
2016-03-08 13:16:08 +01:00
Anatol Belski 8ca02bb233 fix regression introduced in 5683b6fa39
Test extended. Basically, both iterator type and next node have
to be checked.
2016-03-08 12:59:59 +01:00
Anatol Belski 89a4342507 fix incompatible pointers on 64-bit 2016-03-07 22:01:44 +01:00
Anatol Belski f7e81fd9f1 fix double free and move temps into local scope 2016-03-07 16:38:47 +01:00
Anatol Belski 0fccddba75 add error check 2016-03-07 16:26:01 +01:00
Nikita Popov 860dc17ab7 Fixed bug #71724 2016-03-06 21:38:21 +01:00
Anatol Belski be5bbe7068 fix ibase connection routine
followup on a7028d96
2016-03-04 12:26:25 +01:00
Tjerk Meesters a7028d9671 Fix one zpp usage in interbase
Also small tweak to zpp REAME
2016-03-03 23:50:02 +01:00
Nikita Popov 5602f64213 Eliminate usages of _PP macros
These are either in debug code (fix them), commented out (drop
them) or in dead compatibility macros (drop them).

One usage was in php_stream_get_from_zval(), which we have not used
since at least PHP 5.2 and, judging from the fact that nobody
complained about it causing compile errors in PHP 7, nobody else
uses it either, so drop it.

There are still remaining uses in mysqli embedded and odbc birdstep.
These probably need to be dropped outright.
2016-03-03 23:20:12 +01:00
Nikita Popov 3240dd93b3 Merge branch 'PHP-5.6' into PHP-7.0 2016-03-03 19:27:35 +01:00
Christoph M. Becker 2d4ad66ff2 Fixed bug #69953
Added support for MKCALENDAR request method in CLI web server.
2016-03-03 19:22:38 +01:00
Nikita Popov 159602bd86 Merge branch 'PHP-5.6' into PHP-7.0 2016-03-03 17:29:58 +01:00
Anton Blanchard ccd215a517 Additional improvements to crypt() detection code
Reformat to normalize tabs vs spaces, return 1 if crypt.h not
defined, fix C99 compliance.
2016-03-03 17:28:34 +01:00
Nikita Popov 5a01605b4b Merge branch 'PHP-5.6' into PHP-7.0 2016-03-03 17:14:18 +01:00
Michael Orlitzky 08fce8e2c5 ext/standard/config.m4: fix crypt() test segfaults in >=glibc-2.17.
Starting with glibc-2.17, the crypt() function will report an EINVAL
and return NULL when the format of the "salt" parameter is
invalid. The current tests for crypt() pass its result to strcmp(),
causing segfaults when the value returned from crypt() is NULL.

This commit modifies the test programs to exit with failure when
crypt() returns NULL.

Reference: https://bugs.gentoo.org/show_bug.cgi?id=518964
2016-03-03 17:12:57 +01:00
Nikita Popov 1ac152938c Move semicolon into TSRMLS_CACHE_EXTERN/DEFINE
Also re bug #71575.
2016-03-03 16:50:01 +01:00
James Titcumb c4b188871e Fix bug #71575 removing extra semicolons outside macros 2016-03-03 16:41:03 +01:00
Nikita Popov 5527c5b083 Merge branch 'PHP-5.6' into PHP-7.0 2016-03-03 16:38:13 +01:00
Nikita Popov a4e56194d7 Fix intermixed SKIPIF and XFAIL sections in test 2016-03-03 16:38:05 +01:00
Nikita Popov bdd578fcbb Disable upload_2G test on travis 2016-03-03 16:35:45 +01:00
Anatol Belski 4f0042bead Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  show correct MINFO with libpq >= 9.5.x
2016-03-02 17:05:05 +01:00
Anatol Belski 2399c64eaf show correct MINFO with libpq >= 9.5.x 2016-03-02 17:03:20 +01:00
Dmitry Stogov 908b662f7f PHP-7 zend_call_function() doesn't support symbol_table substitution 2016-03-02 16:56:39 +03:00
Dmitry Stogov b6bbe33f05 Better fix for IS_INDIRECT support in zend_hash_merge() 2016-03-02 15:09:04 +03:00
Julien Pauli 914d33c40e Going for 5.5.34 2016-03-02 11:02:42 +01:00
Dmitry Stogov afedd4fd59 Fixed test (sizeof(zend_string) is different on 32 and 64-bit systems) 2016-03-02 13:01:42 +03:00
Dmitry Stogov ab800642df Introduce zend_symtable_exists_ind() for API consistency 2016-03-02 11:53:47 +03:00
Stanislav Malyshev 1ce0ea7396 fix wddx merge 2016-03-02 00:02:33 -08:00
Stanislav Malyshev 6823ee923d Update NEWS 2016-03-01 23:09:47 -08:00
Stanislav Malyshev 22d8e9aced Merge branch 'PHP-7.0.4' into PHP-7.0
* PHP-7.0.4: (21 commits)
  update NEWS
  fix test file
  Fix version
  update NEWS
  Update NEWS
  Fix bug #71610: Type Confusion Vulnerability - SOAP / make_http_soap_request()
  Fix bug #71637: Multiple Heap Overflow due to integer overflows
  extend check for add_flag
  Fixed another segfault with file_cache_only now
  set version
  fix nmake clean in phpize mode
  Fixed segfault with file_cache_only
  Fixed possible crash at PCRE on MSHUTDOWN
  Fixed more synchronisation issues during SHM reload
  Set proper type flags (REFCOUNTED and COPYABLE) according to interned or regular string
  sync with improvements in NEWS
  Fixed process synchronisation problem, that may cause crashes after opcache restart
  Fix bug #71498: Out-of-Bound Read in phar_parse_zipfile()
  fix ts buld
  prep for 5.6.19RC1
  ...

Conflicts:
	configure.in
	main/php_version.h
2016-03-01 23:08:19 -08:00
Stanislav Malyshev 499c1e81a1 Merge branch 'PHP-7.0' of git.php.net:php-src into PHP-7.0
* 'PHP-7.0' of git.php.net:php-src:
  limit size of result set so unit test runs reliably
2016-03-01 23:07:49 -08:00
Stanislav Malyshev c69d80d701 update NEWS 2016-03-01 23:07:32 -08:00
Stanislav Malyshev 90a0cbd594 Merge branch 'PHP-5.6.19' into PHP-7.0.4
* PHP-5.6.19:
  fix test file
  Fix version
  update NEWS
  Update NEWS
  Fix bug #71498: Out-of-Bound Read in phar_parse_zipfile()
  fix ts buld
  prep for 5.6.19RC1
  5.6.20 is next
  Fixed bug #71587 - Use-After-Free / Double-Free in WDDX Deserialize

Conflicts:
	configure.in
	ext/wddx/wddx.c
	main/php_version.h
2016-03-01 23:01:48 -08:00
Stanislav Malyshev b3bb1aacfe Merge branch 'PHP-5.6.19' into PHP-5.6
* PHP-5.6.19:
  fix test file
  Fix version
  Update NEWS
2016-03-01 22:56:08 -08:00
Stanislav Malyshev 6e6a556b8c Merge branch 'PHP-5.5' into PHP-5.6.19
* PHP-5.5:
  fix test file
  Fix version
  Update NEWS
2016-03-01 22:55:49 -08:00
Stanislav Malyshev 3c8ccdd9d3 fix test file 2016-03-01 22:55:02 -08:00
Stanislav Malyshev 54df59b729 Fix version 2016-03-01 22:47:27 -08:00
Stanislav Malyshev ae3f132be1 Merge branch 'PHP-5.6.19' into PHP-5.6
* PHP-5.6.19:
  update NEWS
  Fix bug #71498: Out-of-Bound Read in phar_parse_zipfile()
  fix ts buld
  prep for 5.6.19RC1
  Fixed bug #71587 - Use-After-Free / Double-Free in WDDX Deserialize
2016-03-01 22:42:16 -08:00
Stanislav Malyshev a0bbac550e update NEWS 2016-03-01 22:41:10 -08:00
Stanislav Malyshev 91990bbde0 Merge branch 'PHP-5.5.33' into PHP-5.6.19
* PHP-5.5.33:
  Fix bug #71498: Out-of-Bound Read in phar_parse_zipfile()
  Fixed bug #71587 - Use-After-Free / Double-Free in WDDX Deserialize
2016-03-01 22:40:00 -08:00
Stanislav Malyshev 153a44d6bb Update NEWS 2016-03-01 22:37:23 -08:00
Stanislav Malyshev 07b6fc93b1 Fix bug #71610: Type Confusion Vulnerability - SOAP / make_http_soap_request() 2016-03-01 22:32:38 -08:00
Stanislav Malyshev 9cabc99fce Fix bug #71637: Multiple Heap Overflow due to integer overflows 2016-03-01 22:32:38 -08:00
Xinchen Hui db68b8ea54 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  limit size of result set so unit test runs reliably
2016-03-02 14:27:09 +08:00
Xinchen Hui 20add1e530 Merge branch 'PHP-5.6-bug_69757' of https://github.com/wayfair/php-src into PHP-5.6
* 'PHP-5.6-bug_69757' of https://github.com/wayfair/php-src:
  limit size of result set so unit test runs reliably
2016-03-02 14:26:34 +08:00
Stanislav Malyshev 6f8585fc7d Merge branch 'PHP-7.0.4' into PHP-7.0
* PHP-7.0.4:
  Fix bug #71610: Type Confusion Vulnerability - SOAP / make_http_soap_request()
  Fix bug #71637: Multiple Heap Overflow due to integer overflows
  set versions

Conflicts:
	configure.in
	main/php_version.h
2016-03-01 22:22:47 -08:00
Xinchen Hui 3fb566f475 Fixed test ext/readline/tests/readline_read_history_error_001.phpt
This only pass with libedit
2016-03-02 12:29:15 +08:00
Xinchen Hui 2d4186dde7 Use hash_exists_ind in symbol table 2016-03-02 12:11:13 +08:00
Nikita Popov 726e87e142 Merge branch 'PHP-5.6' into PHP-7.0 2016-03-02 00:37:40 +01:00
Nikita Popov 471540d285 Fix intermittent failure of bug_68819_002.phpt
The test used rand(32, 127) to select the character, however
chr(127) results in "data" instead of the expected result, so this
test would fail in something like 1% of the runs.

Replace rand() with fixed character "a".
2016-03-02 00:34:36 +01:00
Nikita Popov dea2e1bc64 Merge branch 'PHP-5.6' into PHP-7.0 2016-03-01 23:32:47 +01:00
mpyw 0bbea60524 Fix bug #71694
Exports contants CURLM_ADDED_ALREADY.
2016-03-01 23:31:58 +01:00
Adam Baratz 2e18d438b0 limit size of result set so unit test runs reliably 2016-03-01 17:15:36 -05:00
Xinchen Hui 961c8d568d Maybe we should introduce a symtable_exists_ind 2016-03-01 20:01:02 +08:00
Xinchen Hui 996760f104 Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0
* 'PHP-7.0' of git.php.net:/php-src:
  remove unused vars
  fix possible pointer truncation on win64
  Updated NEWS
  extend check for add_flag
  LDAP - Added support to change the certificates verification
2016-03-01 19:20:57 +08:00
Xinchen Hui 186844be92 Fixed bug #71695 (Global variables are reserved before execution).
Instead of slow down hash_merge, we may also check the array(whether it
contains INDIRECT) outside of the loop, however, consisdering hash_merge
is not widly used, I prefer fix this in the current way to keep the
codes simple
2016-03-01 19:19:07 +08:00
Anatol Belski 655e5dd99d remove unused vars 2016-03-01 10:52:49 +01:00
Anatol Belski acbbe76d7b fix possible pointer truncation on win64 2016-03-01 10:51:55 +01:00
Côme Bernigaud afcce5ceca Updated NEWS 2016-03-01 09:56:19 +01:00
Anatol Belski bb80c00a00 extend check for add_flag 2016-03-01 09:37:50 +01:00
Anatol Belski 0df2575e9f extend check for add_flag 2016-03-01 09:36:07 +01:00
Xinchen Hui 08af2f9a11 Fixed another segfault with file_cache_only now 2016-03-01 08:21:14 +01:00
Edwin Hoksberg ba96506676 LDAP - Added support to change the certificates verification 2016-03-01 04:59:30 +01:00
Xinchen Hui 9fc0517328 Fixed another segfault with file_cache_only now 2016-03-01 10:50:56 +08:00
Nikita Popov a6afaa9a85 Merge branch 'PHP-5.6' into PHP-7.0
Conflicts:
	ext/phar/tar.c
2016-02-29 22:44:46 +01:00
Jos Elstgeest 50b4cafd28 Fixed bugs #71317 and #71504
If there are duplicate filenames in tar, the last one wins.
2016-02-29 22:34:35 +01:00
Anatol Belski 4a66b01639 set version 2016-02-29 20:44:00 +01:00
Anatol Belski 31dc08a904 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  add test for bug #68957
2016-02-29 18:44:15 +01:00
Anatol Belski d78220fb2c add test for bug #68957 2016-02-29 18:43:03 +01:00
Anatol Belski 7a14a286bd update NEWS 2016-02-29 18:26:48 +01:00
Anatol Belski 128cc4bc9d Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2016-02-29 18:26:08 +01:00
Anatol Belski c49d9f0684 update NEWS 2016-02-29 18:25:16 +01:00
Anatol Belski 56ab4a6096 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed #54648 PDO::MSSQL forces format of datetime fields
2016-02-29 17:07:05 +01:00
Anatol Belski 53c036b30b Fixed #54648 PDO::MSSQL forces format of datetime fields
adopted patch by steven dot lambeth at gmx dot de
2016-02-29 17:04:49 +01:00
Anatol Belski 44c3f1492f Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  remove unneeded free parts
2016-02-29 16:30:33 +01:00
Anatol Belski 7816698580 remove unneeded free parts
See bug #71667, free_statement already does the job
2016-02-29 16:26:46 +01:00
Anatol Belski f806fedd80 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix leaks and add one more NULL check
  add NULL check
  fix C89 compat
  fix arg type
2016-02-29 15:48:51 +01:00
Anatol Belski d7fd614cc6 fix leaks and add one more NULL check 2016-02-29 15:38:42 +01:00
Anatol Belski a310c3b484 add NULL check 2016-02-29 15:26:57 +01:00
Anatol Belski efaafd45b4 fix C89 compat 2016-02-29 15:24:31 +01:00
Anatol Belski 35be4398d1 fix arg type 2016-02-29 15:23:53 +01:00
Anatol Belski 273bb7e9c0 fix nmake clean in phpize mode 2016-02-29 14:58:49 +01:00
Anatol Belski 9ccf3a0292 fix nmake clean in phpize mode 2016-02-29 11:00:09 +01:00
Xinchen Hui b79b036a31 The test self should be fixed(maybe relates to env?)
Revert "Fixed test ext/readline/tests/readline_read_history_error_001.phpt"

This reverts commit 69e26f9f8f.
2016-02-29 15:19:18 +08:00
Xinchen Hui d0b3a72cea Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0
* 'PHP-7.0' of git.php.net:/php-src:
  test fixes
  update NEWS
  Fix bug #71536 Access Violation crashes php-cgi.exe
2016-02-29 15:07:38 +08:00
Xinchen Hui 69e26f9f8f Fixed test ext/readline/tests/readline_read_history_error_001.phpt 2016-02-29 15:07:19 +08:00
Xinchen Hui 6adfc20f04 Fixed segfault with file_cache_only 2016-02-28 15:54:01 +01:00
Anatol Belski f738abab85 test fixes 2016-02-28 11:53:21 +01:00
Anatol Belski 0ac0604b30 update NEWS 2016-02-28 11:06:55 +01:00
Anatol Belski 93592a9c08 Fix bug #71536 Access Violation crashes php-cgi.exe 2016-02-28 11:02:01 +01:00
Xinchen Hui 8c053d44e4 Fixed segfault with file_cache_only 2016-02-28 11:50:06 +08:00
Dmitry Stogov e2bf86fbfd Fixed possible crash at PCRE on MSHUTDOWN 2016-02-26 15:14:20 +01:00
Dmitry Stogov ecea7d3d35 Fixed more synchronisation issues during SHM reload 2016-02-26 15:14:01 +01:00
Dmitry Stogov e65cc72cb6 Set proper type flags (REFCOUNTED and COPYABLE) according to interned or regular string 2016-02-26 15:13:48 +01:00
Xinchen Hui c299b272c7 Fixed bug #71660 (array_column behaves incorrectly after foreach by reference) 2016-02-25 16:07:22 +08:00
Nikita Popov fd561505f4 Fix construction of AO with overloaded object error
a) Fix uses of zend_string in error message
b) Don't assign the overloaded object as the backing storage, that
   sort of defeats the point. Instead leave the previous value.
2016-02-24 22:34:50 +01:00
Nikita Popov 0aa7163816 Fix AO object properties separation 2016-02-24 22:34:50 +01:00
Nikita Popov 079f2f7eb3 Forbid exchangeArray() during sorting
Previously this would leak.
2016-02-24 22:34:50 +01:00
Nikita Popov b657554585 Fix typo in foreach_017.phpt 2016-02-24 22:34:50 +01:00
Dmitry Stogov 6842a3674d Fixed possible crash at PCRE on MSHUTDOWN 2016-02-24 23:46:11 +03:00
Dmitry Stogov 43366f8ba8 Fixed more synchronisation issues during SHM reload 2016-02-24 21:15:53 +03:00
Nikita Popov eb885e9d6e Fix leak on assignment to illegal AO offset 2016-02-24 17:39:16 +01:00
Nikita Popov ea02f57656 Don't use ht applyCount for AO sorting protection
Instead use the AOs own applyCount that just got freed up. Using the
apply count of the HashTable has various side effects, e.g. preventing
the ArrayObject from being dumped.
2016-02-24 17:18:07 +01:00
Nikita Popov 38db6ff306 Remove recursion checks from AO get_properties
These are pointless, there is no recursion (of that kind) happening
there.
2016-02-24 17:10:28 +01:00
Nikita Popov 3ea877ca15 Fix "Call to member function on unknown"
Should be "on null".
2016-02-24 17:00:25 +01:00
Nikita Popov d1057cc139 Fixed bug #71470
Don't report hashtable iterator leaks on unclean shutdown, those
are expected.
2016-02-24 14:09:03 +01:00
Anatol Belski bb2856b28c fix NEWS 2016-02-24 12:29:23 +01:00
Remi Collet 17967ecda1 fix NEWS 2016-02-24 12:26:25 +01:00
Anatol Belski f14c0cc43a sync with improvements in NEWS 2016-02-24 12:23:26 +01:00
Anatol Belski f463297c51 update NEWS 2016-02-24 12:06:35 +01:00
Anatol Belski c9778d3eb9 Port patch and test for bug #47803 to 7.0
See ff115e285a
2016-02-24 12:03:21 +01:00
Anatol Belski 6e1862d0a8 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
  add test for bug #47803
  Fixed bug #47803
2016-02-24 11:57:15 +01:00
Anatol Belski 7d7325246c update NEWS 2016-02-24 11:56:12 +01:00
Anatol Belski 90ad6e3c6c add test for bug #47803 2016-02-24 11:49:02 +01:00
Anatol Belski ff115e285a Fixed bug #47803
Executing prepared statements is succesfull only for the first two statements

The reworked patch descends to the bug #69526 which is fixed by
this as well. The broken logic in the current code was, that
SQLDescribeParam was executed in odbc_execute every time. This piece
is now moved into odbc_prepare and the results are carried on in an
additional structure.

Since the ext/odbc headers are not being currently installed and the
corresponding structs like odbc_result are not used outside ext/odbc,
the binary compatibility persists. Executing SQLDescribeParam only once
in odbc_prepare is also an optimization as the filds usually won't
change that fast and thus requestind the descriptions on every
execution is not required.
2016-02-24 11:40:35 +01:00
Dmitry Stogov ca779add4d Fixed process synchronisation problem, that may cause crashes after opcache restart 2016-02-24 10:54:37 +01:00
Dmitry Stogov 0b9c87a02b Fixed bug #71535 (Integer overflow in zend_mm_alloc_heap()) 2016-02-24 11:04:48 +03:00
Anatol Belski 01e85f3fdc add test for bug #71171 2016-02-23 14:39:17 +01:00
Anatol Belski cd75429ad8 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  make ext/odbc test credentials configurable
2016-02-23 14:22:06 +01:00
Anatol Belski 9623d2dd83 make ext/odbc test credentials configurable 2016-02-23 14:21:04 +01:00
Remi Collet 18e3b11d62 missing include 2016-02-22 18:45:18 +01:00
Remi Collet 0d57c06b2c update bundled libzip to 1.1.2 2016-02-22 18:18:30 +01:00
Nikita Popov 78b29310bc Remove check_std_props arg from get_hash_table
get_properties() is the only place using it, so handle it only
there.
2016-02-22 13:09:54 +01:00
Nikita Popov 3f5c80e8c2 Don't recurse into USE_OTHER checking STD_PROP_LIST
If STD_PROP_LIST is explicitly disabled in the constructor, it
should really be disabled.
2016-02-22 13:04:19 +01:00
Nikita Popov 6c2ca18fe0 Fix typo in previous commit
Happened to be correct because array is the first member, but
definitely not what I wanted...
2016-02-22 12:39:07 +01:00
Nikita Popov fd6ac61064 Fix ArrayObject clone for certain USE_OTHER cases
We can't simply use HASH_OF, need to use the usual hash table
getter.
2016-02-22 12:35:00 +01:00
Nikita Popov 32e2801ff9 Use USE_OTHER for ArrayIterator cloning
intern->array should never be an array with refcount 2.
2016-02-22 12:35:00 +01:00
Remi Collet e8385a60b3 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  cleanup $Id
2016-02-22 09:26:14 +01:00
Remi Collet d20f1d8f1f cleanup $Id 2016-02-22 09:26:00 +01:00
Stanislav Malyshev eaf4e77190 Fix bug #71610: Type Confusion Vulnerability - SOAP / make_http_soap_request() 2016-02-21 23:45:57 -08:00
Stanislav Malyshev 57b997ebf9 Fix bug #71637: Multiple Heap Overflow due to integer overflows 2016-02-21 23:14:29 -08:00
Stanislav Malyshev d25e67eee6 Fix bug #71629: sync php_url_decode definition 2016-02-21 17:11:34 -08:00
Stanislav Malyshev a6fdc5bb27 Fix bug #71498: Out-of-Bound Read in phar_parse_zipfile() 2016-02-21 16:51:05 -08:00
Nikita Popov 0bd64b50b8 Fixed bug #71617 2016-02-21 13:00:37 +01:00
Remi Collet 2ecc0c1085 cleanup, ext/json is simple PHP now 2016-02-20 17:42:53 +01:00
Andrea Faulds a50c31da19 Test that mt_rand() consistently produces the wrong results
See 6f6bd8ce53 and its revert,
a0724d3081.
2016-02-18 22:35:44 +00:00
Dmitry Stogov 796e1629b0 Set proper type flags (REFCOUNTED and COPYABLE) according to interned or regular string 2016-02-18 23:15:38 +03:00
Dmitry Stogov 25fbb06e2d Better fix for bug #71622 (Strings used in pass-as-reference cannot be used to invoke C::$callable()) 2016-02-18 23:14:46 +03:00
Anatol Belski 830b2bd368 refix broken 20ca0b89bd 2016-02-18 19:51:18 +01:00
Anatol Belski 9ac01060f9 Merge branch 'PHP-7.0' of git.php.net:php-src into PHP-7.0 2016-02-18 19:44:58 +01:00
Anatol Belski 7f7dce3cd6 update NEWS 2016-02-18 19:43:27 +01:00
Anatol Belski bbaece44ee Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2016-02-18 19:43:03 +01:00
Anatol Belski bbce94ed78 update NEWS 2016-02-18 19:42:18 +01:00
Anatol Belski b3df715f50 add test for bug #71625, 7 variant 2016-02-18 19:40:17 +01:00
Anatol Belski 4564b4c8f6 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  add test for bug #71625
2016-02-18 19:39:30 +01:00
Anatol Belski 688b914217 add test for bug #71625 2016-02-18 19:38:39 +01:00
Rasmus Lerdorf 20ca0b89bd Fix typo 2016-02-18 10:35:53 -08:00
Anatol Belski 9a5797976a Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed bug #71625 Crash in php7.dll with bad phar filename
2016-02-18 19:33:27 +01:00
Anatol Belski 0445abd547 Fixed bug #71625 Crash in php7.dll with bad phar filename 2016-02-18 19:32:08 +01:00
Anatol Belski 150e3804b9 update NEWS 2016-02-18 19:17:54 +01:00
Anatol Belski 148eba2afd Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2016-02-18 19:17:22 +01:00
Anatol Belski f613d89501 update NEWS 2016-02-18 19:16:39 +01:00
Anatol Belski 4b5cce269b Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Bug #71596 Segmentation fault on ZTS with date function (setlocale)
2016-02-18 19:14:22 +01:00
Anatol Belski 632fc51d98 Bug #71596 Segmentation fault on ZTS with date function (setlocale) 2016-02-18 19:13:07 +01:00
Bob Weinand 3ce6ad9d13 Fixed bug #71622 (Strings used in pass-as-reference cannot be used to invoke C::$callable()) 2016-02-18 13:53:15 +01:00
Leigh a0724d3081 Revert "Fix #71152: mt_rand() returns the different values from original mt19937ar.c"
This reverts commit 6f6bd8ce53.

`mt_rand()` is seedable with `mt_srand()` which means it can be used to (re)produce specific streams of numbers. All code (no matter how few instances that may be) that previously depended on this behaviour will no longer produce the same results.

This kind of change needs to be discussed before being committed.
2016-02-18 11:09:01 +00:00
Anatol Belski 68a51ae953 fix ts buld 2016-02-18 10:31:24 +01:00
Lior Kaplan aa383d633e Sort 7.0.4 extensions by name, merge FPM entries 2016-02-18 11:24:03 +02:00
Stanislav Malyshev 9afb29aa68 Remove TSRMLS_* from code, they are not used anymore 2016-02-17 22:44:05 -08:00
Stanislav Malyshev cf842f1064 Remove TSRMLS_* from docs as it's not used anymore 2016-02-17 22:36:01 -08:00
Anatol Belski 491925bc53 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix ts buld
2016-02-18 07:12:42 +01:00
Anatol Belski a329dc70e9 fix ts buld 2016-02-18 07:11:36 +01:00
Ferenc Kovacs c3eeb8092a prep for 5.6.19RC1 2016-02-18 01:26:18 +01:00
Ferenc Kovacs e87ac6de31 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  5.6.20 is next
2016-02-18 00:32:15 +01:00
Ferenc Kovacs 4762ed4d27 5.6.20 is next 2016-02-18 00:31:18 +01:00
Bob Weinand 055b411218 Fix crash when advancing inside an internal function
This just happened in the "double ctrl+c" mode, when we halted inside an internal function; there was some code assuming a proper op_array
2016-02-17 20:27:46 +01:00
Dmitry Stogov d228752939 Fixed process synchronisation problem, that may cause crashes after opcache restart 2016-02-17 13:58:05 +03:00
kusano 6f6bd8ce53 Fix #71152: mt_rand() returns the different values from original mt19937ar.c 2016-02-17 11:32:59 +08:00
Anatol Belski 4e527d8201 set versions 2016-02-16 09:17:47 +01:00
Anatol Belski 837e2a912d prepare next 2016-02-16 09:14:05 +01:00
Anatol Belski 7f5e8704bf Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  yet two test fixes in openssl in 5.6
2016-02-16 08:29:37 +01:00
Anatol Belski 343307000e yet two test fixes in openssl in 5.6 2016-02-16 08:28:10 +01:00
Anatol Belski 84014cf733 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  improve test
2016-02-16 08:06:38 +01:00
Anatol Belski 974dea5e88 improve test 2016-02-16 08:05:16 +01:00
Xinchen Hui 0fccd154bd Fixed bug #71603 (compact() maintains references in php7) 2016-02-16 11:02:57 +08:00
Bob Weinand 23b770f31f Fixed bug #71601 (finally block not executed after yield from) 2016-02-15 22:37:21 +01:00
Anatol Belski 7faf625ff3 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix timelib compat with PHP5
2016-02-15 16:53:31 +01:00
Anatol Belski 11102e2653 Fix timelib compat with PHP5
Windows builds in PHP5 are always using long which is 32-bit even
in 64-bit build. Thus in PHP5, timelib_long and the company have
to always evaluate to a 32-bit.
2016-02-15 16:50:42 +01:00
Anatol Belski 64b16deaba Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Backported fix for bug #71525
2016-02-15 15:15:52 +01:00
Anatol Belski 633fb2d0e8 Backported fix for bug #71525 2016-02-15 15:14:23 +01:00
Dmitry Stogov 388ab976b5 Fixed possible memory leak 2016-02-15 16:40:05 +03:00
Dmitry Stogov 5c4b4d11be Added missing semicolon 2016-02-15 16:37:27 +03:00
Stanislav Malyshev c1355152db More fixing for bug #71540 2016-02-15 01:53:02 -08:00
Stanislav Malyshev e34a7a1b08 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix bug #71540 - NULL pointer dereference in xsl_ext_function_php()

Conflicts:
	ext/xsl/xsltprocessor.c
2016-02-15 00:09:30 -08:00
Stanislav Malyshev cf0cf5b507 Fix bug #71540 - NULL pointer dereference in xsl_ext_function_php() 2016-02-15 00:09:09 -08:00
Stanislav Malyshev c11b23c465 Fix bug #71540 - NULL pointer dereference in xsl_ext_function_php() 2016-02-15 00:08:18 -08:00
Anatol Belski 9b277e6cff Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix dir separator in test
2016-02-15 09:01:59 +01:00
Anatol Belski c94ee2e0c8 fix dir separator in test 2016-02-15 09:00:07 +01:00
Anatol Belski a3927fa7f5 fix dir separator in test 2016-02-15 08:58:20 +01:00
Anatol Belski 53639c44df make sure the tests always uses same tz 2016-02-15 08:38:55 +01:00
Xinchen Hui afe0ddf6dd 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 news entry
  fix NEWS entry
  update NEWS
  Fix bug #71525
2016-02-15 15:32:52 +08:00
Anatol Belski 8f5cdca9c4 fixed news entry 2016-02-15 08:27:41 +01:00
Anatol Belski 9746f2e9da Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix NEWS entry
2016-02-15 08:27:17 +01:00
Xinchen Hui e917402f05 Fixed typo (I think it should be a typo) 2016-02-15 15:26:44 +08:00
Anatol Belski 199c0ec48d fix NEWS entry 2016-02-15 08:25:23 +01:00
Anatol Belski e027f16e94 update NEWS 2016-02-15 08:21:46 +01:00
Sean DuBois f31e0cd334 Fix bug #71525
timelib_time->timelib_rel_time is mutated by date_modify, and because it is never zero'ed out
it latters causes other date operations to fail (like date_date_set)
2016-02-15 08:19:07 +01:00
Stanislav Malyshev b1bd4119bc Fixed bug #71587 - Use-After-Free / Double-Free in WDDX Deserialize 2016-02-14 22:34:39 -08:00
Xinchen Hui d0649a8441 Update NEWS 2016-02-15 13:24:39 +08:00
Mickaël 0c2e184eac fpm: call zend_signal_init() in child
This addresses bug #71269.

When an fpm child handles more than one request, zend_signal_startup() will
override the saved signal handlers with the internal zend handlers set from the
previous request, causing a SIGQUIT signal to result in a core dump rather than
gracefully exiting (the expected behaviour).

This is fixed by adding a call to zend_signal_init() after setting the
signal handlers in the child. The same technique is used in the apache SAPI
module in commit fd5a756ad4 which addresses
bug #61083.
2016-02-15 13:23:37 +08:00
Xinchen Hui 0e363e90a4 Update NEWS 2016-02-15 10:37:37 +08:00
Xinchen Hui 8974e4c781 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Update NEWS: "Fixed bug  #71584 (Possible use-after-free of ZCG(cwd) in Zend Opcache)"
  Fix use-after-free of ZCG(cwd) in Zend Optimizer

Conflicts:
	ext/opcache/ZendAccelerator.c
2016-02-15 10:32:50 +08:00
Xinchen Hui 2b850e1565 Update NEWS: "Fixed bug #71584 (Possible use-after-free of ZCG(cwd) in Zend Opcache)" 2016-02-15 10:31:37 +08:00
Xinchen Hui 5e152f54ae Merge branch 'PHP-5.6' of git.php.net:/php-src into PHP-5.6
* 'PHP-5.6' of git.php.net:/php-src:
  update NEWS
  Fixed bug #71559 Built-in HTTP server, we can downlaod file in web by bug
  Check length of string before comparing to :memory:
  Fix bounds check in strip_tags()
  Fix test description
  FIx bug #71569
2016-02-15 10:29:28 +08:00
Anatol Belski 1740648312 updated NEWS 2016-02-14 20:54:13 +01:00
Anatol Belski aabb6b70c5 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2016-02-14 20:53:41 +01:00
Anatol Belski aa10fc6092 update NEWS 2016-02-14 20:52:47 +01:00
Anatol Belski 724ee19111 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed bug #71559 Built-in HTTP server, we can downlaod file in web by bug
2016-02-14 20:49:03 +01:00
Anatol Belski ce4a2f0fc6 Fixed bug #71559 Built-in HTTP server, we can downlaod file in web by bug 2016-02-14 20:47:23 +01:00
Anatol Belski 9bef2212aa cleanup duplicated var 2016-02-14 17:20:37 +01:00
Anatol Belski 8289f11390 fix file lists with subdirs passed to EXTENSION()
The underlying place responsible is the ADD_SOURCES() function. With
this, the calls like

EXTENSION("hello", "sub0/file0.c sub1/file1.c", ...)

are working correctly. Same for

ADD_SOURCES("some/dir", "sub0/file0.c sub1/file1.c", ...)
2016-02-14 17:15:20 +01:00
Nikita Popov c9357f82d3 Format string fixes
Conflicts:
	ext/pgsql/pgsql.c
2016-02-14 14:45:53 +01:00
Nikita Popov 5983378364 Fix format attributes in ZTS 2016-02-14 14:44:27 +01:00
Nikita Popov 30d5432bfe Merge branch 'PHP-5.6' into PHP-7.0
Conflicts:
	ext/sqlite3/sqlite3.c
2016-02-13 18:03:06 +01:00
Nikita Popov fece24f8f4 Check length of string before comparing to :memory: 2016-02-13 18:01:50 +01:00
Nikita Popov f43fe8cb4c Merge branch 'PHP-5.6' into PHP-7.0 2016-02-13 17:48:17 +01:00
Nikita Popov 4e0134c661 Fix bounds check in strip_tags() 2016-02-13 17:47:30 +01:00
Nikita Popov adcdb4f7ba Fix test description 2016-02-13 17:46:24 +01:00
Nikita Popov 7f474086e3 Fix extract() overwriting its own argument
Already covered by bug46873.phpt under valgrind.
2016-02-13 17:39:26 +01:00
Nikita Popov 70c8db08c6 Merge branch 'PHP-5.6' into PHP-7.0
Conflicts:
	ext/pdo_mysql/mysql_driver.c
2016-02-13 15:21:16 +01:00
Nikita Popov bc419fee5c FIx bug #71569
convert_to_string() may result in an interned string.
2016-02-13 15:17:51 +01:00
Nikita Popov ccc06e252b Forbid yield from in by-reference generators
The current yield from implementation doesn't support by-ref
yields. It's likely not worthwhile to actually implement this,
but we should at least keep the door open for the future by
issuing a compile error.

Refs bug #71252.
2016-02-12 17:55:29 +01:00
Nikita Popov 9cebdc5d47 Fix yield-by-ref of constant
Typo in the condition...
2016-02-11 16:32:45 +01:00
Nikita Popov 1322672c0b Fix dangling send target when using yield from
Also drop some unnecessary TRY_DELREFs -- leftovers from the days
when null was refcounted.
2016-02-11 16:25:16 +01:00
Anatol Belski 95a47ab556 fix version header 2016-02-11 16:23:19 +01:00
Bob Weinand 1a01a5ec83 Fixed inherited functions from unspecified files being included in phpdbg_get_executable()
See also https://github.com/krakjoe/phpdbg/issues/152
2016-02-11 06:42:51 +01:00
Nikita Popov aa3f44a395 Crude generator GC for value/key/retval
These values remain live after the generator has been closed, so
they are particularly susceptible to leaking cycles.
2016-02-10 19:03:02 +01:00
Joe Watkins daf3d0c875 Merge branch 'PHP-7.0' of https://github.com/php/php-src into PHP-7.0 2016-02-10 12:58:19 +00:00
Joe Watkins 3ac63df9bc be more precise about the meaning of -n 2016-02-10 12:57:48 +00:00
Yussuf Khalil 35f6f9b0db Fix use-after-free of ZCG(cwd) in Zend Optimizer 2016-02-10 10:33:57 +01:00
Xinchen Hui aeb5319336 Update NEWS 2016-02-09 23:36:15 +08:00
Xinchen Hui 33417bf409 Merge branch 'PHP-5.6' into PHP-7.0
Conflicts:
	ext/zip/php_zip.c
2016-02-09 23:35:55 +08:00
Xinchen Hui c339d5217a Merge branch 'PHP-5.6' of git.php.net:/php-src into PHP-5.6 2016-02-09 23:33:30 +08:00
Xinchen Hui f45752eb83 Fixed bug #71561 (NULL pointer dereference in Zip::ExtractTo) 2016-02-09 23:32:20 +08:00
Xinchen Hui a219fc1753 Fixed bug (Low probability segfault in zend_arena) 2016-02-09 12:20:11 +08:00
Lior Kaplan 2aa585a505 Add entry for re-fix of #70976 in commit 14e4d393 2016-02-08 20:31:08 +02:00
Lior Kaplan fb7d673ef2 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Align spacing in make install messages
  Add entry for re-fix of #70976 in commit 14e4d393
2016-02-08 20:29:24 +02:00
Lior Kaplan 6772fbff62 Align spacing in make install messages 2016-02-08 20:27:19 +02:00
Leigh 3ef57f8d5d Fixed memory leak in curl_getinfo()
The "v ? v" in the CAASTR macro caused zend_string_copy to be
called twice
2016-02-08 11:36:14 +00:00
Xinchen Hui 0490d4a404 Happy Year of Monkey (Forgot test of #71537) 2016-02-08 10:22:16 +08:00
Lior Kaplan 879671aeae Add entry for re-fix of #70976 in commit 14e4d393 2016-02-07 20:19:31 +02:00
Xinchen Hui 336e39f2b1 Fixed bug #71537 (PCRE segfault from Opcache) 2016-02-07 23:19:24 +08:00
Nikita Popov 9f82f21d01 Fix bug #71529 2016-02-06 16:43:28 +01:00
Xinchen Hui d645706547 Online test 2016-02-05 19:56:23 +08:00
Xinchen Hui e724e54305 Update NEWS 2016-02-05 19:51:58 +08:00
Xinchen Hui 095096c7ab Merge branch 'PHP-5.6' into PHP-7.0
Conflicts:
	ext/curl/interface.c
2016-02-05 19:51:33 +08:00
Xinchen Hui 5fdfab743d Fixed bug #71523 (Copied handle with new option CURLOPT_HTTPHEADER crashes while curl_multi_exec) 2016-02-05 19:49:26 +08:00
Lior Kaplan 3311f8e840 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Align NEWS entry format
2016-02-05 01:08:22 +02:00
Lior Kaplan b680426bd3 Align NEWS entry format 2016-02-05 01:08:01 +02:00
Lior Kaplan 8442a1cc4e Align NEWS entry format 2016-02-05 00:50:25 +02:00
Ferenc Kovacs 374c1fec9c Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2016-02-04 20:41:13 +01:00
Ferenc Kovacs 8c1c12a2e2 update NEWS 2016-02-04 20:40:54 +01:00
Anatol Belski 2941c498fd add missin NEWS entry 2016-02-04 18:09:35 +01:00
Jakub Zelenka 1ff88d3945 Merge branch 'PHP-5.6' into PHP-7.0 2016-02-04 16:54:44 +00:00
Jakub Zelenka feab5e6fa0 Split and clean up OpenSSL X509 tests 2016-02-04 16:51:36 +00:00
Hieu Le ace71b4c5f Fix bug #71501 2016-02-04 11:44:56 +01:00
Jakub Zelenka cdf99ffc69 Merge branch 'PHP-5.6' into PHP-7.0 2016-02-03 16:22:39 +00:00
Jakub Zelenka 1f3906c1ce Rename and clean up OpenSSL tests 2016-02-03 16:20:27 +00:00
Antony Dovgal 3a2c9e6e1d fix build
sorry about that =\
2016-02-03 18:03:28 +03:00
Antony Dovgal 52e120fa90 use correct element size, avoid reading stack 2016-02-03 15:14:10 +03:00
Antony Dovgal 6f81e95c33 check length first, prevent out-of-bounds read 2016-02-03 14:49:16 +03:00
Ferenc Kovacs 5154a48d37 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2016-02-03 01:08:09 +01:00
Ferenc Kovacs e0332ea1a9 update NEWS 2016-02-03 01:07:34 +01:00
Julien Pauli 0d1d814e1a Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Updated NEWS
  Fix #70720

Conflicts:
	ext/standard/string.c
	ext/standard/tests/strings/bug70720.phpt
2016-02-02 18:17:16 +01:00
Julien Pauli ed80ca00f4 Updated NEWS 2016-02-02 18:14:57 +01:00
Julien Pauli 6b0b29edd6 Fix #70720 2016-02-02 18:09:54 +01:00
Anatol Belski f7c3f54be9 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  add error check to sysconf call
  Going for 5.5.33 now
2016-02-02 14:27:30 +01:00
Anatol Belski 2c691f06b5 reapply the sysconf error check patch 2016-02-02 14:26:58 +01:00
Anatol Belski b837f205ca Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  add error check to sysconf call
  Going for 5.5.33 now

Conflicts:
	configure.in
	main/php_version.h
2016-02-02 14:22:31 +01:00
Anatol Belski 377d353c9f add error check to sysconf call 2016-02-02 14:19:10 +01:00
Derick Rethans b573658092 Updated to version 2016.1 (2016a) 2016-02-02 10:34:05 +00:00
Derick Rethans 0c6dbff900 Empty merge 2016-02-02 10:34:05 +00:00
Derick Rethans 43fee6c6a1 Updated to version 2016.1 (2016a) 2016-02-02 10:34:03 +00:00
Julien Pauli 7d875fb9df Going for 5.5.33 now 2016-02-02 10:42:49 +01:00
Anatol Belski 0d0978dfa6 fix dir separator 2016-02-02 09:56:57 +01:00
Anatol Belski 1c2d45d2d1 fix directory separator in test 2016-02-02 09:52:07 +01:00
Anatol Belski 0ec1207d74 update libs version 2016-02-02 09:03:40 +01:00
Anatol Belski cec46864fc Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update libs version
2016-02-02 09:03:22 +01:00
Anatol Belski bf974312d1 update libs version 2016-02-02 09:02:12 +01:00
Anatol Belski c48a188df2 update NEWS 2016-02-02 08:32:28 +01:00
Stanislav Malyshev c631f1ee2b Merge branch 'PHP-7.0.3' into PHP-7.0
* PHP-7.0.3: (35 commits)
  fix tests
  update NEWS
  fix tests
  fix NEWS
  Update NEWS
  update NEWS
  Fixed bug #71475: openssl_seal() uninitialized memory usage
  Fixed bug #71488: Stack overflow when decompressing tar archives
  fix tests
  fix wrong gc sequence
  revert the API string as well
  update NEWS
  Revert "Fix #70720"
  sync NEWS
  reset ext/session to the state of 7.0.2
  update NEWS
  update NEWS
  add missing headers for SIZE_MAX
  backport the escapeshell* functions hardening branch
  add tests
  ...

Conflicts:
	configure.in
	ext/session/tests/bug69111.phpt
	main/php_version.h
2016-02-01 20:45:49 -08:00
Stanislav Malyshev 0fca0d9f42 fix tests 2016-02-01 20:23:21 -08:00
Stanislav Malyshev 7ffb976104 update NEWS 2016-02-01 20:23:06 -08:00
Stanislav Malyshev e231830f16 Merge branch 'PHP-5.6.18' into PHP-7.0.3
* PHP-5.6.18:
  fix tests
  fix NEWS
  Update NEWS
  update NEWS
  Fixed bug #71488: Stack overflow when decompressing tar archives
  update NEWS
  add missing headers for SIZE_MAX
  backport the escapeshell* functions hardening branch
  add tests
  Fix bug #71459 - Integer overflow in iptcembed()
  prepare 5.6.18RC1
  Fix test when run with openssl < 1.0.2 (reorder so no more SSLv2 message) Fix skip message to work
  improve fix for bug #71201
  Fixed bug #71323 - Output of stream_get_meta_data can be falsified by its input
  Fix bug #71391: NULL Pointer Dereference in phar_tar_setupmetadata()
  Fixed bug #71331 - Uninitialized pointer in phar_make_dirstream()
  Fix bug #71335: Type Confusion in WDDX Packet Deserialization
  Fix bug #71354 - remove UMR when size is 0

Conflicts:
	configure.in
	ext/phar/dirstream.c
	ext/phar/phar_object.c
	ext/phar/tar.c
	ext/standard/exec.c
	ext/standard/iptc.c
	ext/standard/math.c
	ext/standard/streamsfuncs.c
	ext/wddx/wddx.c
	main/php_version.h
	main/streams/memory.c
2016-02-01 20:00:01 -08:00
Stanislav Malyshev 0007a695c8 Merge commit 'ca02d9c2d6f9bea7bf8abe607f1ee9484b1d7b62' into PHP-7.0.3
* commit 'ca02d9c2d6f9bea7bf8abe607f1ee9484b1d7b62':
  Upgrade bundled PCRE to 8.38
  Fixed NEWS file entry
  fix the fix for bug #70976 (imagerotate)

Conflicts:
	ext/pcre/pcrelib/config.h
2016-02-01 19:35:59 -08:00
Stanislav Malyshev 877823e209 Merge remote-tracking branch 'origin/PHP-7.0.3' into PHP-7.0.3
* origin/PHP-7.0.3:
  fix tests
  fix wrong gc sequence
  revert the API string as well
  update NEWS
  Revert "Fix #70720"
  sync NEWS
  reset ext/session to the state of 7.0.2
  improve fix for bug #71201
  set versions to 7.0.3RC1
  fix test for 7.0, OpenSSL >= 1.0.2 disables SSLv2 by default
  fork test
  fix test
  fork test
  fork test for win32
  fork test
  Use SUCCESS/FAILURE
  Fixed bug #65720 ext/mbstring/libmbfl/filters/mbfilter_cp5022x.c:281: bad if test
  Fixed bug #65720 ext/mbstring/libmbfl/filters/mbfilter_cp5022x.c:281: bad if test
  Update NEWS
  Fixed bug 71397 (mb_send_mail segmentation fault)
2016-02-01 19:32:06 -08:00
Stanislav Malyshev 41be90d95b Merge branch 'PHP-5.6.18' into PHP-5.6
* PHP-5.6.18:
  fix tests
  fix NEWS
  Update NEWS
  update NEWS
  Fixed bug #71488: Stack overflow when decompressing tar archives
  update NEWS
  add missing headers for SIZE_MAX
  backport the escapeshell* functions hardening branch
  add tests
  Fix bug #71459 - Integer overflow in iptcembed()
  prepare 5.6.18RC1
  Fixed bug #71323 - Output of stream_get_meta_data can be falsified by its input
  Fix bug #71391: NULL Pointer Dereference in phar_tar_setupmetadata()
  Fixed bug #71331 - Uninitialized pointer in phar_make_dirstream()
  Fix bug #71335: Type Confusion in WDDX Packet Deserialization
  Fix bug #71354 - remove UMR when size is 0

Conflicts:
	configure.in
	main/php_version.h
2016-02-01 19:16:34 -08:00
Stanislav Malyshev 24167095a5 Merge branch 'PHP-5.5' into PHP-5.6.18
* PHP-5.5:
  fix tests
  fix NEWS
  update NEWS
2016-02-01 19:15:19 -08:00
Stanislav Malyshev 2a7d8c0a06 fix tests 2016-02-01 18:58:02 -08:00
Stanislav Malyshev e7051cb47a fix NEWS 2016-02-01 18:47:56 -08:00
Stanislav Malyshev 20c38facfd Update NEWS 2016-02-01 18:47:28 -08:00
Stanislav Malyshev 0d86a98c31 update NEWS 2016-02-01 18:44:33 -08:00
Stanislav Malyshev 309ead112f Merge branch 'PHP-5.5.32' into PHP-5.6.18
* PHP-5.5.32:
  Fixed bug #71488: Stack overflow when decompressing tar archives
  update NEWS
  add missing headers for SIZE_MAX
  backport the escapeshell* functions hardening branch
  add tests
  Fix bug #71459 - Integer overflow in iptcembed()
  Fixed bug #71323 - Output of stream_get_meta_data can be falsified by its input
  Fix bug #71391: NULL Pointer Dereference in phar_tar_setupmetadata()
  Fix bug #71335: Type Confusion in WDDX Packet Deserialization
  Fix bug #71354 - remove UMR when size is 0
2016-02-01 18:32:31 -08:00
Stanislav Malyshev 2f1ce4f209 Merge branch 'PHP-5.5' into PHP-5.6.18
* PHP-5.5:
  Upgrade bundled PCRE to 8.38
  Fixed NEWS file entry
  fix the fix for bug #70976 (imagerotate)
2016-02-01 18:32:14 -08:00
Stanislav Malyshev 5bde5a0a2e Merge remote-tracking branch 'origin/PHP-5.6.18' into PHP-5.6.18
* origin/PHP-5.6.18:
  prepare 5.6.18RC1
  Fix test when run with openssl < 1.0.2 (reorder so no more SSLv2 message) Fix skip message to work
  improve fix for bug #71201
  fork test
  fix test
  fork test
  fork test for win32
  fork test
  Use SUCCESS/FAILURE
  Fixed bug #65720 ext/mbstring/libmbfl/filters/mbfilter_cp5022x.c:281: bad if test
  Fix header file include
  Fixed bug #69111 (Crash in SessionHandler::read()). Made session save handler abuse much harder than before.
2016-02-01 18:31:57 -08:00
Stanislav Malyshev b5ef8ed168 Merge branch 'PHP-5.5' into PHP-5.5.32
* PHP-5.5:
  Upgrade bundled PCRE to 8.38
  Fixed NEWS file entry
2016-02-01 18:28:49 -08:00
Anatol Belski 2764586c6d fix extensions path for nmake install 2016-02-01 15:42:32 +01:00
Anatol Belski a5474c7ac0 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix extensions path for nmake install
2016-02-01 15:41:04 +01:00
Anatol Belski a01fd45d15 fix extensions path for nmake install 2016-02-01 15:38:53 +01:00
Antony Dovgal 8b023e9192 use correct pointer in the math 2016-02-01 16:33:04 +03:00
Stanislav Malyshev 916c1fb3af Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Upgrade bundled PCRE to 8.38
  Fixed NEWS file entry
  fix the fix for bug #70976 (imagerotate)

Conflicts:
	ext/pcre/pcrelib/config.h
2016-01-31 21:39:24 -08:00
Stanislav Malyshev 00788f9cfb Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Upgrade bundled PCRE to 8.38
  Fixed NEWS file entry
  fix the fix for bug #70976 (imagerotate)
2016-01-31 21:06:31 -08:00
Stanislav Malyshev ca02d9c2d6 Upgrade bundled PCRE to 8.38 2016-01-31 20:37:47 -08:00
Stanislav Malyshev 33b1fbbb5c Fixed bug #71475: openssl_seal() uninitialized memory usage 2016-01-31 20:18:46 -08:00
Stanislav Malyshev 07c7df68bd Fixed bug #71488: Stack overflow when decompressing tar archives 2016-01-31 19:37:56 -08:00
Jakub Zelenka 265ccef39b Rename private.key to private_rsa_1024.key in new openssl_seal test 2016-01-31 18:13:37 +00:00
Jakub Zelenka d8d20151c3 Merge branch 'PHP-5.6' into PHP-7.0 2016-01-31 14:40:20 +00:00
Jakub Zelenka ef356912b3 Rewrite OpenSSL SPKI tests to speed them up
Also fix some CS issue and naming
2016-01-31 14:28:13 +00:00
Jakub Zelenka e93ab05489 Add private RSA keys with 2048 and 4096 bit long modulus 2016-01-31 13:57:00 +00:00
Jakub Zelenka 148d013323 Rename private.key to private_rsa_1024.key 2016-01-31 13:54:16 +00:00
Xinchen Hui e062759401 Fixed bug #71485 (Return typehint on interanal func causes Fatal error when it throws exception). 2016-01-29 22:05:52 -08:00
Xinchen Hui 3dadd654cf Also WIN32 side 2016-01-29 20:38:50 -08:00
Xinchen Hui 01ff25970f Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0 2016-01-29 20:37:14 -08:00
Robin McCorkell 7806553fd3 Properly read any remaining data when closing FastCGI socket 2016-01-29 20:36:52 -08:00
Anatol Belski b947aff98d yet one revert 2016-01-29 21:43:14 +01:00
Anatol Belski ac22f71477 Revert "adjust test for 7.0"
This reverts commit 7fdb019e66.
2016-01-29 21:27:22 +01:00
Anatol Belski 6891e6abdf Revert "refix #69111 and one related test"
This reverts commit 80f7b01258.

Conflicts:
	ext/session/mod_files.c
2016-01-29 20:59:58 +01:00
Anatol Belski 3d90531d1e Revert "fix yet another leak"
This reverts commit 39084ccc68.
2016-01-29 20:58:00 +01:00
Anatol Belski d1d3c0832e add XFAIL 2016-01-29 20:57:05 +01:00
Anatol Belski ebcfe7618d Revert "refix #69111 and one related test"
This reverts commit 80f7b01258.
2016-01-29 20:50:14 +01:00
Anatol Belski 7f977c13dc Revert "fix tests"
This reverts commit d964ccba40.
2016-01-29 20:49:52 +01:00
Anatol Belski 57d9797b6f Revert "fix leak in 7.0"
This reverts commit ee49df011c.
2016-01-29 20:46:47 +01:00
Anatol Belski 6cc1c962f7 remove NEWS entry 2016-01-29 20:40:27 +01:00
Anatol Belski 16a99c6368 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  add XFAIL
  Revert "fix leak in 5.6"
2016-01-29 20:37:46 +01:00
Anatol Belski b7dadfae87 add XFAIL 2016-01-29 20:36:11 +01:00
Anatol Belski 40b9f52c2c Revert "fix leak in 5.6"
This reverts commit fa548e5ca9.
2016-01-29 20:33:39 +01:00
Anatol Belski 80f7b01258 refix #69111 and one related test
It is the least evil as the test just reduces the fail path. 5.6 seems
still broken in this regard, a backport should follow if travis is happy.
2016-01-29 19:55:50 +01:00
Guillaume Outters d01566fe2f opcache config.m4: Use = for comparison
HAVE_OPCACHE_FILE_CACHE and HAVE_HUGE_CODE_PAGES where not
correctly set on old systems (e.g. FreeBSD 8), due to a PHPism in
config.m4.  Using the standard shell operator = instead of == makes
the configure script produce the correct output.
2016-01-29 17:02:21 +01:00
Guillaume Outters 10b2172f01 phpdbg config.m4: make it detectable by old shells
--enable-phpdbg is not detected on old systems (e.g.: stock FreeBSD 8), due to a PHPism in config.m4 (use of == operator).
Replacing == with the historic = makes it pass.
2016-01-29 17:01:04 +01:00
Anatol Belski 6ba7acee5c fix tests 2016-01-29 16:34:10 +01:00
Anatol Belski d964ccba40 fix tests 2016-01-29 16:32:27 +01:00
Anatol Belski 39084ccc68 fix yet another leak 2016-01-29 16:03:33 +01:00
Derick Rethans eae5914554 Merge branch 'PHP-5.6' into PHP-7.0 2016-01-29 15:34:47 +01:00
Derick Rethans deba5275eb Added entry to NEWS 2016-01-29 15:34:36 +01:00
Derick Rethans 3523c0a45f Merge branch 'PHP-5.6' into PHP-7.0 2016-01-29 15:30:31 +01:00
Derick Rethans 1a86825688 Use the new timelib function for comparing times 2016-01-29 15:28:11 +01:00
Willem-Jan 2aeef4e539 Test + support for negative timestamps with microtime 2016-01-29 15:22:22 +01:00
Willem-Jan 1bbbc47e79 Also test against equality 2016-01-29 15:22:22 +01:00
Willem-Jan 5879721936 Compare agaist fraction when sse are equal 2016-01-29 15:22:22 +01:00
Willem-Jan a0237259e9 Added test for comparing dates with microseconds 2016-01-29 15:22:22 +01:00
Derick Rethans 822ca45220 Merge in changes in timelib 2016.01 2016-01-29 15:21:55 +01:00
Anatol Belski 7421acfc90 fix wrong gc sequence 2016-01-29 15:20:44 +01:00
Anatol Belski d2c752d7e9 fix wrong gc sequence 2016-01-29 15:18:59 +01:00
Anatol Belski ee49df011c fix leak in 7.0 2016-01-29 14:48:05 +01:00
Anatol Belski a0d7a66756 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix leak in 5.6
2016-01-29 13:59:28 +01:00
Anatol Belski fa548e5ca9 fix leak in 5.6 2016-01-29 13:56:11 +01:00
Anatol Belski b783d0b338 revert the API string as well 2016-01-29 13:24:09 +01:00
Anatol Belski d9eea2c209 revert the API string as well 2016-01-29 12:52:41 +01:00
Anatol Belski 45f5ae8943 update NEWS
Fix for #70720 is postphoned to 7.0.4
2016-01-29 12:46:44 +01:00
Anatol Belski dd3d10cef1 update NEWS 2016-01-29 12:42:46 +01:00
Anatol Belski 47af41b785 Revert "Fix #70720"
This reverts commit ff7ed9021c.
2016-01-29 12:41:43 +01:00
Anatol Belski 7fdb019e66 adjust test for 7.0 2016-01-29 12:29:41 +01:00
Anatol Belski a068047f62 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  add test for bug #69111
2016-01-29 12:29:05 +01:00
Anatol Belski 4b0feeb8fa add test for bug #69111 2016-01-29 12:27:35 +01:00
Anatol Belski e92abf850e sync NEWS 2016-01-29 11:42:57 +01:00
Anatol Belski 87a671bba0 reset ext/session to the state of 7.0.2 2016-01-29 11:41:45 +01:00
Anatol Belski 9475243310 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2016-01-29 11:28:38 +01:00
Anatol Belski efb667e683 update NEWS 2016-01-29 11:27:44 +01:00
Anatol Belski cb6d045d11 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  refix bug #69111, crash in 5.6 only
2016-01-29 11:25:32 +01:00
Anatol Belski 25108babdb refix bug #69111, crash in 5.6 only 2016-01-29 11:24:19 +01:00
Remi Collet 83947f4282 NEWS 2016-01-29 10:24:40 +01:00
Remi Collet c0802af52c Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  NEWS
  Fixed Bug #62172 FPM not working with Apache httpd 2.4 balancer/fcgi setup
2016-01-29 10:24:15 +01:00
Remi Collet a81cb64a96 NEWS 2016-01-29 10:23:42 +01:00
Remi Collet 07d2dcdf09 Fixed Bug #62172 FPM not working with Apache httpd 2.4 balancer/fcgi setup
Only needed with Apache version < 2.4.12 (ex RHEL-7)
2016-01-29 10:20:42 +01:00
Anatol Belski 9599acdef6 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2016-01-29 08:43:13 +01:00
Anatol Belski d77b28507c update NEWS 2016-01-29 08:42:54 +01:00
Anatol Belski 8ee1ae9748 update NEWS 2016-01-29 08:41:25 +01:00
Anatol Belski b858224b88 reset ext/session to the state of 7.0.2 2016-01-29 08:37:27 +01:00
Anatol Belski 74e51b3513 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  reset the ext/session to the state of 5.6.17
2016-01-29 08:37:05 +01:00
Anatol Belski ae6e139c77 reset the ext/session to the state of 5.6.17 2016-01-29 08:33:09 +01:00
Anatol Belski fc53d7408b update NEWS 2016-01-28 13:58:48 +01:00
Anatol Belski a1c675e3f2 update NEWS 2016-01-28 13:57:44 +01:00
Anatol Belski 686a17893a add missing headers for SIZE_MAX 2016-01-28 13:46:34 +01:00
Anatol Belski f4d7bbf4ac backport the escapeshell* functions hardening branch 2016-01-28 13:45:43 +01:00
Anatol Belski 828364e59c add tests 2016-01-28 13:27:26 +01:00
Julien Pauli df78eacc2f Fixed NEWS file entry 2016-01-28 12:47:53 +01:00
Anatol Belski 89ccd8ad56 Merge branch 'escapeshell_hardened_70' into PHP-7.0.3
* escapeshell_hardened_70:
  extend _SC_ARG_MAX usage onto platforms where it's available
  Fixed bug #71039 exec functions ignore length but look for NULL termination
  Follow up on bug #71270
2016-01-28 12:08:49 +01:00
Anatol Belski a9048d101f extend _SC_ARG_MAX usage onto platforms where it's available 2016-01-28 12:06:33 +01:00
Dmitry Stogov 6039d2d914 Fixed bug #71474 (Crash because of VM stack corruption on Magento2). 2016-01-28 11:41:15 +03:00
Stanislav Malyshev 88bd7cb418 Use safe alloc functions when calculations are made on sizes.
Fixes bug #71449, bug #71450
2016-01-26 22:33:51 -08:00
Stanislav Malyshev f379142d66 Fix bug #71459 - Integer overflow in iptcembed() 2016-01-26 17:30:50 -08:00
Stanislav Malyshev 54c210d2ea Fix bug #71459 - Integer overflow in iptcembed() 2016-01-26 17:26:52 -08:00
Xinchen Hui 6239e4410d Fixed bug #71439 (OpenSSL-dependent test fails to skip when openssl not enabled) 2016-01-26 16:22:31 +08:00
Xinchen Hui bdbb32158c Added test for bug #71443 2016-01-26 15:59:18 +08:00
Xinchen Hui 9ff08ae17c Fixed bug #71443 (Segfault using built-in webserver with intl using symfony) 2016-01-26 15:57:39 +08:00
Jakub Zelenka 67c1921e2b Merge branch 'PHP-5.6' into PHP-7.0 2016-01-25 17:19:18 +00:00
Jakub Zelenka a63d0f55da Fix memory leak with not freeing OpenSSL errors 2016-01-25 16:50:16 +00:00
Antony Dovgal c140bbb5db check for NULL and avoid crashes 2016-01-25 14:30:33 +03:00
Xinchen Hui e7f2c5bd6a Fixed bug #71442 (forward_static_call crash) 2016-01-25 12:13:22 +08:00
Xinchen Hui b68d525f16 Update libmagic.patch for PHP-7.0 2016-01-25 11:45:32 +08:00
Xinchen Hui 4cb47bd3bd Fixed compiler warnings 2016-01-25 11:45:14 +08:00
Xinchen Hui da7f42de38 Fixed bug #71434 (finfo throws notice for specific python file) 2016-01-25 11:40:08 +08:00
Xinchen Hui 47e7662a13 Update libmagic.patch for PHP-5.6 2016-01-25 11:25:04 +08:00
Xinchen Hui a458a4fdc1 Fixed bug #7143 (finfo throws notice for specific python file)
There seems be a bug while it was changed from regexec to
preg_match_impl:
https://github.com/php/php-src/commit/46906925#diff-56e765972d18c84894ea061cfe58076aR1757
2016-01-25 11:24:44 +08:00
Bob Weinand 001ce475ee Fixed bug #71441 (Typehinted Generator with return in try/finally crashes) 2016-01-24 19:55:16 +01:00
Xinchen Hui ae122bf7ad Fixed warning of incompatible pointer 2016-01-23 22:49:15 -08:00
Bob Weinand 65ef7f8c33 Use uint64_t for flags (warning) 2016-01-23 18:16:57 +01:00
Ferenc Kovacs ec85410eb2 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  re-arrange NEWS
2016-01-21 02:25:23 +01:00
Ferenc Kovacs 848de651a2 re-arrange NEWS 2016-01-21 02:24:51 +01:00
Ferenc Kovacs b2d5666d94 prepare 5.6.18RC1 2016-01-21 02:24:05 +01:00
Ferenc Kovacs f636f4c9a3 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  5.6.19 will be next
2016-01-20 15:43:15 +01:00
Ferenc Kovacs a4fc2e1eb2 5.6.19 will be next 2016-01-20 15:39:05 +01:00
Remi Collet e58cf4f996 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix test when run with openssl < 1.0.2 (reorder so no more SSLv2 message) Fix skip message to work
2016-01-20 13:10:56 +01:00
Remi Collet 3c8f287d58 Fix test when run with openssl < 1.0.2 (reorder so no more SSLv2 message)
Fix skip message to work
2016-01-20 13:08:58 +01:00
Joe Watkins 98164714ea Merge branch 'PHP-7.0' of https://github.com/php/php-src into PHP-7.0 2016-01-20 10:52:57 +00:00
Joe Watkins b899656eb0 fix ReflectionClass::__toString doc block omitted 2016-01-20 10:52:27 +00:00
Anatol Belski 4b97237374 improve fix for bug #71201 2016-01-20 09:46:09 +01:00
Anatol Belski a63904b150 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  improve fix for bug #71201
2016-01-20 09:45:49 +01:00
Anatol Belski 508d1dae25 improve fix for bug #71201 2016-01-20 09:44:28 +01:00
Anatol Belski a6801092ab improve fix for bug #71201 2016-01-20 00:49:05 +01:00
Anatol Belski c6a30d5c8a add 7.0.4 block to NEWS 2016-01-19 08:03:44 +01:00
Anatol Belski b5cd7c30f8 bump version to 7.0.4-dev 2016-01-19 08:02:39 +01:00
Anatol Belski f7e6ff99d7 set versions to 7.0.3RC1 2016-01-18 23:03:59 +01:00
Anatol Belski 2749bf4576 fix test for 7.0, OpenSSL >= 1.0.2 disables SSLv2 by default 2016-01-18 18:23:07 +01:00
Anatol Belski 71dbad172f Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fork test
  fix test
  fork test
  fork test for win32
  fork test
2016-01-18 17:02:23 +01:00
Anatol Belski fa0dd6006d fork test 2016-01-18 16:59:17 +01:00
Anatol Belski 5673ede6e9 fix test 2016-01-18 16:52:48 +01:00
Anatol Belski adf0be7680 fork test 2016-01-18 16:45:35 +01:00
Anatol Belski f0e2fe8e75 fork test for win32 2016-01-18 16:37:04 +01:00
Anatol Belski f0b02f2351 fork test 2016-01-18 16:34:20 +01:00
Stanislav Malyshev 52e0c4081f Fix bug #71313 - Use-after-free vulnerability in SPL(SplObjectStorage, unserialize) 2016-01-17 23:23:42 -08:00
Yasuo Ohgaki d7fc3be99e Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Use SUCCESS/FAILURE
2016-01-18 13:35:01 +09:00
Yasuo Ohgaki ee1dd4949a Use SUCCESS/FAILURE 2016-01-18 13:33:47 +09:00
Yasuo Ohgaki f9c595f3c0 Fixed bug #65720 ext/mbstring/libmbfl/filters/mbfilter_cp5022x.c:281: bad if test 2016-01-18 10:54:07 +09:00
Stanislav Malyshev bcd64a9bdd Fixed bug #71311: Use-after-free vulnerability in SPL(ArrayObject, unserialize) 2016-01-17 17:53:03 -08:00
Yasuo Ohgaki 7554478a4c Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed bug #65720 ext/mbstring/libmbfl/filters/mbfilter_cp5022x.c:281: bad if test
2016-01-18 10:52:11 +09:00
Yasuo Ohgaki dc23f1f38f Fixed bug #65720 ext/mbstring/libmbfl/filters/mbfilter_cp5022x.c:281: bad if test 2016-01-18 10:51:29 +09:00
Yasuo Ohgaki 069522d494 Update NEWS 2016-01-18 09:47:34 +09:00
Yasuo Ohgaki 3b55386e9b Merge branch 'pull-request/1731' into PHP-7.0
* pull-request/1731:
  Fixed bug 71397 (mb_send_mail segmentation fault)
2016-01-18 09:39:38 +09:00
Yasuo Ohgaki ff10dceff8 Fixed bug #71397 (mb_send_mail segmentation fault) 2016-01-18 09:23:20 +09:00
Tim Düsterhus e585696a0b Fixed bug 71397 (mb_send_mail segmentation fault) 2016-01-17 15:30:09 +01:00
Yasuo Ohgaki 8052df8110 Merge branch 'PHP-7.0' of git.php.net:php-src into PHP-7.0
* 'PHP-7.0' of git.php.net:php-src:
  Remove unnecessary warning by warning reorder.
2016-01-17 17:14:15 +09:00
Yasuo Ohgaki 3b2d98a625 Fixed bug #71394 (session_regenerate_id() must close opened session on errors) 2016-01-17 17:11:47 +09:00
Yasuo Ohgaki 00eaaca18a Remove unnecessary warning by warning reorder. 2016-01-17 17:08:44 +09:00
Yasuo Ohgaki dbba4418d8 Remove unnecessary warning by warning reorder. 2016-01-17 16:21:01 +09:00
Stanislav Malyshev 6297a117d7 Fixed bug #71323 - Output of stream_get_meta_data can be falsified by its input 2016-01-16 22:10:54 -08:00
Stanislav Malyshev 1c1b8b6998 Fix bug #71391: NULL Pointer Dereference in phar_tar_setupmetadata() 2016-01-16 20:43:43 -08:00
Yasuo Ohgaki 9f2240963f Add test for Bug #70133 (Extended SessionHandler::read is ignoring $session_id when calling parent) 2016-01-16 05:29:19 +09:00
Anatol Belski 93db2dac48 PS(id) is zend_string *, use appropriate API 2016-01-15 15:47:09 +01:00
Yasuo Ohgaki 925aea7e1b Update NEWS 2016-01-15 17:05:58 +09:00
Anatol Belski 348dd1a018 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix header file include
2016-01-15 08:43:56 +01:00
Jason Young d1401f6059 Fix header file include 2016-01-15 08:43:00 +01:00
Yasuo Ohgaki 34ff7bbeb1 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed bug #69111 (Crash in SessionHandler::read()). Made session save handler abuse much harder than before.
2016-01-15 16:24:22 +09:00
Stanislav Malyshev 4c2424eb24 Fixed bug #71331 - Uninitialized pointer in phar_make_dirstream() 2016-01-14 22:58:40 -08:00
Yasuo Ohgaki bfb9307b2d Fixed bug #69111 (Crash in SessionHandler::read()).
Made session save handler abuse much harder than before.
2016-01-15 15:50:14 +09:00
Yasuo Ohgaki d7f8d9e3a9 Fix typo 2016-01-15 15:21:18 +09:00
Yasuo Ohgaki 31ae802736 Fix uninitialized read in rfc1867 handler reported by valgrind. Only in PHP 5.6.
This commit fixes initialized read, but calling php_session_initialize() directly
is problematic because configuration could be invalid. Invalid config may result
in segfault. This will be addressed later.
2016-01-15 15:18:00 +09:00
Yasuo Ohgaki 132d919c85 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Improved fix for bug #68063 (Empty session IDs do still start sessions).
2016-01-15 10:19:01 +09:00
Yasuo Ohgaki 8c37a086c7 Improved fix for bug #68063 (Empty session IDs do still start sessions). 2016-01-15 09:45:08 +09:00
Anatol Belski 4ab7d6a5e1 update NEWS 2016-01-14 18:42:13 +01:00
Anatol Belski 33cc42d8a5 port 4308c868f9 to 7.0 2016-01-14 18:38:30 +01:00
Anatol Belski b05eb52c35 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
  Fixed bug #70979 crash with bad soap request
  Update NEWS
2016-01-14 17:48:33 +01:00
Anatol Belski c126725a7f update NEWS 2016-01-14 17:47:17 +01:00
Anatol Belski 4308c868f9 Fixed bug #70979 crash with bad soap request
The error handler is overloaded with the SOAP one. However the SOAP
handler eventually wants to access some of its globals. This won't
work as long as the SOAP globals aren't initialized. The use case
is when an error is thrown before RINIT went through. As the call
order is arbitrary, the safest is to wait when all the modules
called their RINIT.
2016-01-14 17:42:28 +01:00
Anatol Belski 12eff055da update NEWS 2016-01-14 09:02:54 +01:00
Xinchen Hui ad85cce1bc Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0
* 'PHP-7.0' of git.php.net:/php-src:
  Avoid incomplete zend_internal_function initialization.
2016-01-14 14:49:57 +08:00
Xinchen Hui 262f09d678 Fixed macro name 2016-01-14 14:49:23 +08:00
Stanislav Malyshev 285cd3417f Fix bug #71335: Type Confusion in WDDX Packet Deserialization 2016-01-13 16:43:04 -08:00
Stanislav Malyshev 635ba1f2c3 Merge branch 'bug71354' into PHP-5.5.32
* bug71354:
  Fix bug #71354 - remove UMR when size is 0
2016-01-13 16:33:37 -08:00
Stanislav Malyshev 13ad4d3e97 Fix bug #71354 - remove UMR when size is 0 2016-01-13 16:32:29 -08:00
Dmitry Stogov 6a2621e3a5 Avoid incomplete zend_internal_function initialization. 2016-01-13 15:06:17 +03:00
Xinchen Hui 39f0950746 Fixed bug #71336 (Wrong is_ref on properties as exposed via get_object_vars()) 2016-01-13 17:38:18 +08:00
Dmitry Stogov 50be2c89be Fixed bug #71248 (Wrong interface is enforced) 2016-01-13 11:41:57 +03:00
Yasuo Ohgaki c3c6ab08fe Update NEWS 2016-01-13 06:40:28 +09:00
Yasuo Ohgaki 1f513805dc Update NEWS 2016-01-13 06:40:11 +09:00
Bogdan Padalko 2b4625d687 Remove obj handlers ptr value from spl_object_hash()
We still keep the same output length, for people who rely on the
return value having a specific format. The handler part will now
simply be always the same (it was the same nearly always anyway).

The motivation behind this change is to avoid breaking
spl_object_hash() and SplObjectStorage if an extension changes the
handlers table of an object. This has come up, for example, in
weakref implementations.
2016-01-12 16:47:21 +01:00
Julien Pauli bec0aec116 Trigger op_array_handler() if HAVE_OP_ARRAY_HANDLER is set 2016-01-12 15:19:14 +01:00
Anatol Belski c527549e89 Fixed bug #71039 exec functions ignore length but look for NULL termination 2016-01-12 14:57:22 +01:00
Anatol Belski 22a5ccab72 Follow up on bug #71270
Using the max allowed command line length for an underlying OS.
2016-01-12 14:41:44 +01:00
Remi Collet aa8d3a8cc6 fix the fix for bug #70976 (imagerotate) 2016-01-12 14:03:35 +01:00
Remi Collet af3f3be0c1 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fix the fix for bug #70976 (imagerotate)
  Use php_session_abort()
2016-01-12 13:54:23 +01:00
Remi Collet 14e4d393cf fix the fix for bug #70976 (imagerotate) 2016-01-12 13:52:27 +01:00
Yasuo Ohgaki 63c77ee4b1 Use php_session_abort() 2016-01-12 20:39:33 +09:00
Yasuo Ohgaki 224aaf94af Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed Bug #71038 session_start() returns TRUE on failure
2016-01-12 19:52:54 +09:00
Yasuo Ohgaki a15e9ccba8 Fixed Bug #71038 session_start() returns TRUE on failure 2016-01-12 19:09:49 +09:00
Anatol Belski 4e7cb057a0 partial test fixes, only obvious mistaking parts 2016-01-12 10:44:55 +01:00
Anatol Belski d8e2b8424f remove the unnecessary condition part 2016-01-12 10:22:10 +01:00
Anatol Belski 8e7c469f82 fix possible buffer overrun in the errmsg string 2016-01-12 10:17:32 +01:00
Anatol Belski b54739e68d integrate tsrmls cache 2016-01-12 09:42:38 +01:00
Anatol Belski 391b73b484 update NEWS for fixed bug #71132, fixed bug #71197 2016-01-12 08:34:35 +01:00
Thomas Punt 3bbcd84e2f re-apply patch for github PR #1695 2016-01-12 07:07:51 +01:00
Anatol Belski f53a5dcca3 Revert "update NEWS"
This reverts commit 7954e5dc2a.
2016-01-11 22:03:39 +01:00
Anatol Belski 66d10fe085 Revert "patch for github PR #1695"
This reverts commit 58dd956b63.

crashes on travis
2016-01-11 22:03:36 +01:00
Anatol Belski 3bbbd3ebcd update NEWS 2016-01-11 21:44:23 +01:00
Anatol Belski e509144714 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2016-01-11 21:43:52 +01:00
Anatol Belski ba7736729e update NEWS 2016-01-11 21:42:31 +01:00
Anatol Belski ce568f98bf Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Simplify code per Anatol.
  Insert bug number.
  Use strtoll() when apr_off_t is 64 bits.
2016-01-11 21:39:31 +01:00
Adam Harvey f301a0b23c Simplify code per Anatol. 2016-01-11 21:36:55 +01:00
Adam Harvey 3217c033a5 Insert bug number. 2016-01-11 21:36:53 +01:00
Adam Harvey c895dc5b5b Use strtoll() when apr_off_t is 64 bits. 2016-01-11 21:36:51 +01:00
Anatol Belski 7954e5dc2a update NEWS 2016-01-11 21:14:16 +01:00
Thomas Punt 58dd956b63 patch for github PR #1695 2016-01-11 21:11:55 +01:00
Anatol Belski 1f6612541f fix out format 2016-01-11 20:57:34 +01:00
Anatol Belski 763f86b5d4 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2016-01-11 20:42:20 +01:00
Anatol Belski 6d649b018c update NEWS 2016-01-11 20:41:29 +01:00
Anatol Belski 333765edce Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  backport 9a07245b72 from 7.0
2016-01-11 20:39:52 +01:00
Anatol Belski fffbca55e8 backport 9a07245b72 from 7.0 2016-01-11 20:37:46 +01:00
Anatol Belski b188cafab3 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Align NEWS entry format
2016-01-11 12:16:41 +01:00
Anatol Belski 39e571c8d8 further datatype and range check fixes for ibase 2016-01-11 09:46:53 +01:00
Anatol Belski 57a2a8d4fa datatype fixes 2016-01-11 08:52:54 +01:00
Anatol Belski 23fa54b908 fix typo for #ifdef 2016-01-11 08:37:16 +01:00
Xinchen Hui 8bfa5193d5 Fix various bugs in interbase
Also read: https://marc.info/?l=php-internals&m=145077389117375&w=2
2016-01-11 08:32:47 +01:00
Lior Kaplan 35e87c04fe Align NEWS entry format 2016-01-09 19:10:01 +02:00
Andrea Faulds ae50a0c0be Fix bug #71314 2016-01-08 17:20:52 +00:00
Anatol Belski c7256095c5 update libs_versions.txt 2016-01-08 08:36:21 +01:00
Anatol Belski a98f6dad00 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update libs versions
2016-01-08 08:35:17 +01:00
Anatol Belski 07133ae649 update libs versions 2016-01-08 08:33:55 +01:00
Anatol Belski caae1191da allow static build of ext/ftp 2016-01-08 08:07:15 +01:00
Anatol Belski 0e808b2332 update NEWS 2016-01-07 18:56:53 +01:00
Anatol Belski 1fb763ccab Fixed bug #71227 Can't compile php_curl statically 2016-01-07 18:55:05 +01:00
Anatol Belski e72848c171 more informative error message for opcache fallback 2016-01-07 17:57:41 +01:00
Anatol Belski 42a145273c add SKIPIF condition 2016-01-07 17:54:26 +01:00
Xinchen Hui 16a2b47394 Fixed bug #71300 (Segfault in zend_fetch_string_offset) 2016-01-07 07:05:17 -08:00
Bob Weinand 83cb751047 Fix accidental zval_dtor() usage 2016-01-07 15:12:50 +01:00
Julien Pauli da0eeacf1d Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  5.5.32 now
2016-01-07 13:55:42 +01:00
Julien Pauli bd2229e709 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  5.5.32 now

Conflicts:
	configure.in
	main/php_version.h
2016-01-07 13:55:09 +01:00
Julien Pauli a6734f70e1 5.5.32 now 2016-01-07 13:07:23 +01:00
Julien Pauli a95f36fa7b Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  5.5.32 now
2016-01-07 13:05:57 +01:00
Julien Pauli 2d0215b063 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  5.5.32 now

Conflicts:
	configure.in
	main/php_version.h
2016-01-07 13:05:38 +01:00
Julien Pauli 96c205b5f6 5.5.32 now 2016-01-07 13:04:35 +01:00
Bob Weinand 033d608771 Fixed bug #71297 (Memory leak with yield from) 2016-01-07 11:56:21 +01:00
Ferenc Kovacs 42e0fff928 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  adjust release date for the delay
2016-01-06 15:55:17 +01:00
Ferenc Kovacs b095a22a3b adjust release date for the delay 2016-01-06 15:54:55 +01:00
Ferenc Kovacs a9a7926df5 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  these will be part of 5.6.17 not 5.6.18
  Removed unecessary string dup
  Moved buffer from heap to stack
2016-01-06 15:49:06 +01:00
Ferenc Kovacs 6802a9f28a these will be part of 5.6.17 not 5.6.18 2016-01-06 15:23:18 +01:00
Julien Pauli ef4dc15831 Moved buffer from heap to stack 2016-01-06 11:41:16 +01:00
Julien Pauli 86f48881a4 Removed unecessary string dup 2016-01-06 10:51:36 +01:00
Julien Pauli 810452f68e Moved buffer from heap to stack 2016-01-06 10:51:36 +01:00
Anatol Belski 1e1c5c427e updated NEWS 2016-01-06 07:53:31 +01:00
libnex 2871c70efa Patch for Heap Buffer Overflow in EscapeShell
Proposed patch for bug #71270
2016-01-06 07:49:21 +01:00
Anatol Belski e2565eb614 set release date 2016-01-06 07:45:03 +01:00
Anatol Belski 158288b3c6 fix NEWS and add some 7.0.2 entries 2016-01-06 07:44:26 +01:00
Anatol Belski c0928be7f8 Merge remote-tracking branch 'phpsec/PHP-7.0' into PHP-7.0
* phpsec/PHP-7.0:
  add NEWS entries for 7.0.2
  re-apply the patch from 1785d2b805
  Improve fix for bug #70976
  Fix bug #70976: fix boundary check on gdImageRotateInterpolated
  Fixed bug #70755: fpm_log.c memory leak and buffer overflow
  fix merge mistake
  Fixed #70728
  Fixed bug #70661 (Use After Free Vulnerability in WDDX Packet Deserialization)
2016-01-06 06:09:12 +01:00
Anatol Belski d91b26d344 Merge remote-tracking branch 'origin/PHP-5.6' into PHP-7.0
* origin/PHP-5.6:
  Update NEWS
  Improve fix for bug #70976
  Fixed bug #70661 (Use After Free Vulnerability in WDDX Packet Deserialization)
  Fixed bug #70741: Session WDDX Packet Deserialization Type Confusion Vulnerability
  Fixed #70728
  Fixed bug #70755: fpm_log.c memory leak and buffer overflow
  Fix bug #70976: fix boundary check on gdImageRotateInterpolated
  typofix
2016-01-06 06:08:46 +01:00
Stanislav Malyshev 13750cb0a1 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Update NEWS
  Improve fix for bug #70976
  Fixed bug #70661 (Use After Free Vulnerability in WDDX Packet Deserialization)
  Fixed bug #70741: Session WDDX Packet Deserialization Type Confusion Vulnerability
  Fixed #70728
  Fixed bug #70755: fpm_log.c memory leak and buffer overflow
  Fix bug #70976: fix boundary check on gdImageRotateInterpolated
  typofix
2016-01-05 19:38:29 -08:00
Stanislav Malyshev 74dcbe1299 Update NEWS 2016-01-05 19:28:24 -08:00
Xinchen Hui ce2b2f7e0a Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0 2016-01-06 00:02:53 +08:00
George Wang 69112d7e97 Fixed runtime php.ini override, ini name length is off by 1.
(cherry picked from commit 5bcb7a7019)
2016-01-05 23:48:42 +02:00
Anatol Belski 1dc395c8c4 improve fix for bug #71273 2016-01-05 20:03:05 +01:00
Anatol Belski 8d630f7d15 update NEWS 2016-01-05 18:57:38 +01:00
Anatol Belski 9a07245b72 Fixed bug #71273 A wrong ext directory setup in php.ini leads to crash 2016-01-05 18:54:46 +01:00
Xinchen Hui 695e8b79af Fixed bug #71287 (Error message contains hexadecimal instead of decimal number) 2016-01-06 00:01:44 +08:00
Bob Weinand 654c8aedd1 Fixed bug #71275 (Bad method called on cloning an object having a trait) 2016-01-05 16:27:24 +01:00
Xinchen Hui d4da32d312 Fixed bug #71280 (ibase_blob_add() expects parameter 2 to be resorce) 2016-01-05 23:02:17 +08:00
Anatol Belski af960fcba4 add NEWS entries for 7.0.2 2016-01-05 13:06:00 +01:00
Julien Pauli 736b91c650 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Happy new year (Update copyright to 2016)

Conflicts:
	ext/json/php_json_encoder.h
	sapi/continuity/capi.c
2016-01-04 18:13:38 +01:00
Jakub Zelenka 0ea63cb2a8 Fix small CS label issue in openssl.c 2016-01-04 16:52:52 +00:00
Anatol Belski cf1c50957b re-apply the patch from 1785d2b805
too many conflicts to cherry-pick
2016-01-04 17:52:37 +01:00
Dominic Luechinger e4bdf51f0a Replaced whitespaces with tabs and fixed aligments 2016-01-04 16:46:32 +00:00
Stanislav Malyshev 82865dda71 Improve fix for bug #70976 2016-01-04 17:37:54 +01:00
Stanislav Malyshev 84b8db597a Fix bug #70976: fix boundary check on gdImageRotateInterpolated 2016-01-04 17:37:40 +01:00
Stanislav Malyshev 2eaa755660 Fixed bug #70755: fpm_log.c memory leak and buffer overflow 2016-01-04 17:36:42 +01:00
Anatol Belski b0285db4b7 fix merge mistake 2016-01-04 17:33:23 +01:00
Julien Pauli ef4449a8e8 Fixed #70728
Conflicts:
	ext/xmlrpc/xmlrpc-epi-php.c
2016-01-04 17:31:34 +01:00
Stanislav Malyshev bc4baf608b Fixed bug #70661 (Use After Free Vulnerability in WDDX Packet Deserialization)
Conflicts:
	ext/wddx/wddx.c
2016-01-04 17:10:29 +01:00
Anatol Belski a09e65d2b8 Merge remote-tracking branch 'php/PHP-7.0' into PHP-7.0
* php/PHP-7.0: (115 commits)
  Do not edit the value in place (might be relates to #71261)
  Fixed bug #71264 (file_put_contents() returns unexpected value when filesystem runs full)
  Duplicated i
  remove duplicated skipif conditions
  bump year which is missed in rev 49493a2
  bump year which is missed in rev 49493a2
  sync with new tests from 7.0 for ICU 55_1 and 56_1 compat
  sync skipifs for ext/intl for ICU 55_* and 56_* compat
  Update header to PHP Version 7
  Happy new year (Update copyright to 2016)
  Happy new year (Update copyright to 2016)
  Happy new year (Update copyright to 2016)
  Fixed bug #71249 (ldap_mod_replace/ldap_mod_add store value as string "Array")
  Fixed test after fix lineno of finally
  MFH: Fix lineno for finally FAST_CALL and JMP
  This should be better
  Fixed bug #71245 (file_get_contents() ignores "header" context option if it's a reference)
  Fixed info while setting opcache.file_cache_only
  Drop extra line
  Add CVE for #71105 (PHP 7.0.1)
  ...
2016-01-04 17:07:37 +01:00
Xinchen Hui 36b4311edd Do not edit the value in place (might be relates to #71261) 2016-01-04 05:38:15 -08:00
Xinchen Hui 919562d53b Fixed bug #71264 (file_put_contents() returns unexpected value when filesystem runs full) 2016-01-03 14:21:23 +08:00
Xinchen Hui bce7ed1859 Duplicated i 2016-01-03 14:06:52 +08:00
Lior Kaplan 53fb2f1e5c Happy new year (Update copyright to 2016) 2016-01-03 01:44:37 +02:00
Anatol Belski 302a35bb15 remove duplicated skipif conditions 2016-01-02 13:56:56 +01:00
Xinchen Hui 97a9470d97 bump year which is missed in rev 49493a2 2016-01-02 17:56:11 +08:00
Xinchen Hui 6a7001ed72 Merge branch 'PHP-5.6' into PHP-7.0 2016-01-02 17:53:01 +08:00
Xinchen Hui 3537e95dae bump year which is missed in rev 49493a2 2016-01-02 17:51:24 +08:00
Xinchen Hui d9bac84220 Merge branch 'PHP-5.6' of https://github.com/kaplanlior/php-src into PHP-5.6 2016-01-02 17:48:20 +08:00
Anatol Belski 2c6a4445f7 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  sync with new tests from 7.0 for ICU 55_1 and 56_1 compat
  sync skipifs for ext/intl for ICU 55_* and 56_* compat
2016-01-01 20:27:23 +01:00
Anatol Belski a7b1ea3c84 sync with new tests from 7.0 for ICU 55_1 and 56_1 compat 2016-01-01 20:25:36 +01:00
Anatol Belski 6bcf4b4f40 sync skipifs for ext/intl for ICU 55_* and 56_* compat 2016-01-01 20:13:35 +01:00
Lior Kaplan 59a7ef914f Update header to PHP Version 7 2016-01-01 20:03:16 +02:00
Lior Kaplan 2eb1f38d24 Happy new year (Update copyright to 2016) 2016-01-01 20:03:16 +02:00
Lior Kaplan ed35de784f Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Happy new year (Update copyright to 2016)
2016-01-01 19:48:25 +02:00
Lior Kaplan c51e73c803 Happy new year (Update copyright to 2016) 2016-01-01 19:23:04 +02:00
Lior Kaplan 49493a2dcf Happy new year (Update copyright to 2016) 2016-01-01 19:21:47 +02:00
Xinchen Hui 87958927b0 Fixed bug #71249 (ldap_mod_replace/ldap_mod_add store value as string "Array") 2016-01-01 07:06:58 -08:00
Xinchen Hui 05defb4f56 Fixed test after fix lineno of finally 2016-01-01 13:46:19 +08:00
Derick Rethans 5362f0ad7f MFH: Fix lineno for finally FAST_CALL and JMP 2015-12-31 09:46:43 +00:00
Xinchen Hui da028e0757 This should be better 2015-12-30 05:10:05 -08:00
Xinchen Hui 90d2f509e2 Fixed bug #71245 (file_get_contents() ignores "header" context option if it's a reference) 2015-12-30 05:04:21 -08:00
Xinchen Hui 3f07a256f7 Fixed info while setting opcache.file_cache_only 2015-12-29 15:49:10 +08:00
Stanislav Malyshev 2baeb167a0 Improve fix for bug #70976 2015-12-28 23:44:14 -08:00
Stanislav Malyshev dcf3c9761c Fixed bug #70661 (Use After Free Vulnerability in WDDX Packet Deserialization) 2015-12-28 14:46:35 -08:00
Stanislav Malyshev 1785d2b805 Fixed bug #70741: Session WDDX Packet Deserialization Type Confusion Vulnerability 2015-12-28 12:44:10 -08:00
Lior Kaplan c5f9d0b808 Drop extra line 2015-12-27 20:18:23 +02:00
Lior Kaplan 2c289f48e1 Add CVE for #71105 (PHP 7.0.1) 2015-12-27 20:17:19 +02:00
Xinchen Hui 2453a48ab5 Fixed bug #71225 (curl_setopt() fails to set CURLOPT_POSTFIELDS with reference to CURLFile) 2015-12-26 22:55:38 -08:00
Andrea Faulds 60f5c9f87f Hatch elePHPant 2015-12-27 01:03:03 +00:00
Xinchen Hui decb934e3a Fixed test (extract is no affected) 2015-12-25 21:31:42 -08:00
Xinchen Hui c56efb848b Fixed bug #71220 (Null pointer deref (segfault) in compact via ob_start) 2015-12-25 21:25:53 -08:00
Xinchen Hui 6700be67f5 Fixed bug #71221 (Null pointer deref (segfault) in get_defined_vars via ob_start) 2015-12-25 20:32:26 -08:00
Levi Morrison 2a7eeff33e Remove mentions of "type hint" and "typehint" 2015-12-24 15:19:31 +01:00
Julien Pauli 8182f0ff2a Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed test
2015-12-24 14:44:33 +01:00
Julien Pauli 0bdc2923b1 Fixed test 2015-12-24 14:44:07 +01:00
Julien Pauli 048fb4b00f Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed and improved tests
  test to function socket_getopt();
  test to function socket_clear_error();;
  test to function socket_shutdown();
  test to function socket_send();
  test to function gethostname ( void );
  test to function DateTimeZone::getLocation();
  test to function stream_get_transports();
  test to function stream_get_wrappers();
  test to function stream_socket_enable_crypto();
  test to function stream_socket_get_name();
  Create stream_socket_recvfrom.phpt
  test to stream function set_file_buffer.phpt();
  test to function PDO_getAvaliableDrivers;
  test to misc. function connection_status();
  test to function connection_aborted();
  test to function memory_get_peak_usage();
2015-12-24 14:08:59 +01:00
Julien Pauli d73d9fecf6 Fixed and improved tests 2015-12-24 14:08:44 +01:00
marcosptf 7f31a88bb8 test to function socket_getopt(); 2015-12-24 13:23:00 +01:00
marcosptf 599a0cfdeb test to function socket_clear_error();; 2015-12-24 13:17:35 +01:00
marcosptf e9d3ff0ec7 test to function socket_shutdown(); 2015-12-24 13:04:38 +01:00
marcosptf 1c0d01522c test to function socket_send(); 2015-12-24 11:48:09 +01:00
marcosptf bdc8f7d871 test to function gethostname ( void ); 2015-12-24 11:46:48 +01:00
marcosptf 891ac59305 test to function DateTimeZone::getLocation(); 2015-12-24 10:56:23 +01:00
marcosptf ca0b82fe93 test to function stream_get_transports(); 2015-12-24 10:53:53 +01:00
marcosptf e9d1dff514 test to function stream_get_wrappers(); 2015-12-24 10:51:51 +01:00
marcosptf 7e399566a7 test to function stream_socket_enable_crypto(); 2015-12-24 10:50:54 +01:00
marcosptf a7daf97198 test to function stream_socket_get_name(); 2015-12-24 10:49:02 +01:00
marcosptf 3295264336 Create stream_socket_recvfrom.phpt 2015-12-24 10:47:35 +01:00
marcosptf 379b43bb3b test to stream function set_file_buffer.phpt(); 2015-12-24 10:47:02 +01:00
marcosptf 4f528e5c95 test to function PDO_getAvaliableDrivers;
was add new function to PDO::getAvailableDrivers
2015-12-24 10:45:39 +01:00
marcosptf 8d1d5ffa22 test to misc. function connection_status(); 2015-12-24 10:45:10 +01:00
marcosptf 841594ac18 test to function connection_aborted();
was added a new uncovered misc. function
2015-12-24 10:43:34 +01:00
marcosptf a82f76634a test to function memory_get_peak_usage();
add new test to uncoverage function;

please, @laurence, see if this path is correct!
Thanks
2015-12-24 10:42:22 +01:00
Julien Pauli 3f09d301b5 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Update default_mimetype ini setting description
2015-12-24 10:33:41 +01:00
Thomas Punt 9306c1d254 Update default_mimetype ini setting description
This is in response to doc bug #70287
2015-12-24 10:33:15 +01:00
Tom Van Looy aadb3dd503 These function docs are referencing zend_object_value but this should be zend_object 2015-12-24 10:24:53 +01:00
Xinchen Hui c2fa01b939 Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0
* 'PHP-7.0' of git.php.net:/php-src:
  update NEWS
  update NEWS
  fix merge mistake
  Added test for bug #71201
  Bug #71201 round() segfault on 64-bit builds
  Sort 7.0.1 extensions' entries
  Added test for bug #71201
  Bug #71201 round() segfault on 64-bit builds
  Add CVE for #71020 (PHP 7.0.1)
  Update NEWS & Fixed test
  Fixed bug #71204 (segfault if clean spl_autoload_funcs while autoloading)
  This should never fail
  Fixed bug #71202 (Autoload function registered by another not activated immediately)
  Updated NEWS
  Added support for HTTP 451
2015-12-24 10:42:42 +08:00
Xinchen Hui 64071fc531 Superfluous semicolon 2015-12-24 10:41:05 +08:00
Anatol Belski 85809b969f update NEWS 2015-12-23 18:39:40 +01:00
Anatol Belski 46db3a7320 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
  Added test for bug #71201
  Bug #71201 round() segfault on 64-bit builds

Conflicts:
	ext/standard/math.c
2015-12-23 18:38:54 +01:00
Anatol Belski 0b8c8bfc81 update NEWS 2015-12-23 18:37:05 +01:00
Anatol Belski 0ece97e5a4 fix merge mistake 2015-12-23 18:30:32 +01:00
Anatol Belski 204faa5c36 Added test for bug #71201 2015-12-23 18:26:56 +01:00
Anatol Belski 95454c448b Bug #71201 round() segfault on 64-bit builds 2015-12-23 18:26:55 +01:00
Lior Kaplan dbda61b19b Sort 7.0.1 extensions' entries 2015-12-23 19:25:02 +02:00
Anatol Belski 50c4be0309 Added test for bug #71201 2015-12-23 18:18:02 +01:00
Anatol Belski 0d822f6df9 Bug #71201 round() segfault on 64-bit builds 2015-12-23 18:16:52 +01:00
Lior Kaplan 5c11f4c489 Add CVE for #71020 (PHP 7.0.1) 2015-12-23 19:16:39 +02:00
Xinchen Hui 825b7f895a Update NEWS & Fixed test 2015-12-23 08:13:13 -08:00
Xinchen Hui 8692a99551 Merge branch 'PHP-5.6' into PHP-7.0 2015-12-23 08:11:09 -08:00
Xinchen Hui 620ccc9b1a Fixed bug #71204 (segfault if clean spl_autoload_funcs while autoloading) 2015-12-23 08:10:59 -08:00
Xinchen Hui 9cc4cdbe57 This should never fail 2015-12-23 07:52:24 -08:00
Xinchen Hui e21cb2daea Fixed bug #71202 (Autoload function registered by another not activated immediately) 2015-12-23 07:48:00 -08:00
Julien Pauli 72207b5436 Updated NEWS 2015-12-23 11:37:59 +01:00
Julien Pauli b2ecac9250 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Added support for HTTP 451

Conflicts:
	sapi/cgi/cgi_main.c
	sapi/cli/php_cli_server.c
	sapi/fpm/fpm/fpm_main.c
2015-12-23 11:36:36 +01:00
Julien Pauli ea12ff149c Added support for HTTP 451 2015-12-23 11:31:18 +01:00
Dmitry Stogov f3bf95eb81 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed incorrect setting on 32-bit systems
2015-12-22 21:32:45 +03:00
Dmitry Stogov a57a08e791 Fixed incorrect setting on 32-bit systems 2015-12-22 21:31:28 +03:00
Bob Weinand 3e3d0290ff Added test for (long-ago fixed) bug #70083 2015-12-22 17:39:36 +01:00
Julien Pauli 4df84a648e Fixed #70728 2015-12-22 17:12:49 +01:00
Julien Pauli 897bf916bc Updated NEWS 2015-12-22 16:27:52 +01:00
Julien Pauli 332b778d68 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix #70720
  Align NEWS entry format
2015-12-22 16:26:30 +01:00
Julien Pauli ff7ed9021c Fix #70720 2015-12-22 16:25:51 +01:00
Anatol Belski 4037ba5847 release only appropriate string 2015-12-22 14:33:19 +01:00
Anatol Belski a3e37e0818 update NEWS 2015-12-22 13:18:21 +01:00
Anatol Belski 84530360a0 7.0.3 next 2015-12-22 10:48:32 +01:00
Xinchen Hui d63ae2c382 Fixed bug #71190 (substr_replace converts integers in original $search array to strings) 2015-12-22 12:13:28 +08:00
Xinchen Hui 3524849f77 Fixed #71188 (str_replace converts integers in original $search array to strings) 2015-12-22 11:07:30 +08:00
Lior Kaplan db1504de23 Align NEWS entry format 2015-12-21 23:14:23 +02:00
Stanislav Malyshev be19dbcb84 Fixed bug #70755: fpm_log.c memory leak and buffer overflow 2015-12-08 00:10:07 -08:00
Stanislav Malyshev 4bb422343f Fix bug #70976: fix boundary check on gdImageRotateInterpolated 2015-12-07 23:33:05 -08:00
Stanislav Malyshev 2e157c5275 typofix 2015-12-06 14:07:39 -08:00
1549 changed files with 24321 additions and 9834 deletions

No files matched your search

+1 -1
View File
@@ -178,7 +178,7 @@ Internal Function Naming Convensions
Unexposed module function should be static and should not be defined in
'php_modulename.h'.
static int php_session_destroy(TSRMLS_D)
static int php_session_destroy()
2. Main module source file must be named 'modulename.c'.
-204
View File
@@ -5,7 +5,6 @@ Installing PHP
* General Installation Considerations
* Installation on Unix systems
+ Apache 1.3.x on Unix systems
+ Apache 2.x on Unix systems
+ Lighttpd 1.4 on Unix systems
+ Sun, iPlanet and Netscape servers on Sun Solaris
@@ -103,7 +102,6 @@ Installation on Unix systems
Table of Contents
* Apache 1.3.x on Unix systems
* Apache 2.x on Unix systems
* Lighttpd 1.4 on Unix systems
* Sun, iPlanet and Netscape servers on Sun Solaris
@@ -163,208 +161,6 @@ Table of Contents
you can't figure out why, see the Problems section.
__________________________________________________________________
Apache 1.3.x on Unix systems
This section contains notes and hints specific to Apache installs of
PHP on Unix platforms. We also have instructions and notes for Apache 2
on a separate page.
You can select arguments to add to the configure on line 10 below from
the list of core configure options and from extension specific options
described at the respective places in the manual. The version numbers
have been omitted here, to ensure the instructions are not incorrect.
You will need to replace the 'xxx' here with the correct values from
your files.
Example #1 Installation Instructions (Apache Shared Module Version) for
PHP
1. gunzip apache_xxx.tar.gz
2. tar -xvf apache_xxx.tar
3. gunzip php-xxx.tar.gz
4. tar -xvf php-xxx.tar
5. cd apache_xxx
6. ./configure --prefix=/www --enable-module=so
7. make
8. make install
9. cd ../php-xxx
10. Now, configure your PHP. This is where you customize your PHP
with various options, like which extensions will be enabled. Do a
./configure --help for a list of available options. In our example
we'll do a simple configure with Apache 1 and MySQL support. Your
path to apxs may differ from our example.
./configure --with-mysql --with-apxs=/www/bin/apxs
11. make
12. make install
If you decide to change your configure options after installation,
you only need to repeat the last three steps. You only need to
restart apache for the new module to take effect. A recompile of
Apache is not needed.
Note that unless told otherwise, 'make install' will also install PEAR,
various PHP tools such as phpize, install the PHP CLI, and more.
13. Setup your php.ini file:
cp php.ini-development /usr/local/lib/php.ini
You may edit your .ini file to set PHP options. If you prefer your
php.ini in another location, use --with-config-file-path=/some/path in
step 10.
If you instead choose php.ini-production, be certain to read the list
of changes within, as they affect how PHP behaves.
14. Edit your httpd.conf to load the PHP module. The path on the right hand
side of the LoadModule statement must point to the path of the PHP
module on your system. The make install from above may have already
added this for you, but be sure to check.
LoadModule php7_module libexec/libphp7.so
15. And in the AddModule section of httpd.conf, somewhere under the
ClearModuleList, add this:
AddModule mod_php7.c
16. Tell Apache to parse certain extensions as PHP. For example,
let's have Apache parse the .php extension as PHP. You could
have any extension(s) parse as PHP by simply adding more, with
each separated by a space. We'll add .phtml to demonstrate.
AddType application/x-httpd-php .php .phtml
It's also common to setup the .phps extension to show highlighted PHP
source, this can be done with:
AddType application/x-httpd-php-source .phps
17. Use your normal procedure for starting the Apache server. (You must
stop and restart the server, not just cause the server to reload by
using a HUP or USR1 signal.)
Alternatively, to install PHP as a static object:
Example #2 Installation Instructions (Static Module Installation for
Apache) for PHP
1. gunzip -c apache_1.3.x.tar.gz | tar xf -
2. cd apache_1.3.x
3. ./configure
4. cd ..
5. gunzip -c php-5.x.y.tar.gz | tar xf -
6. cd php-5.x.y
7. ./configure --with-mysql --with-apache=../apache_1.3.x
8. make
9. make install
10. cd ../apache_1.3.x
11. ./configure --prefix=/www --activate-module=src/modules/php7/libphp7.a
(The above line is correct! Yes, we know libphp7.a does not exist at this
stage. It isn't supposed to. It will be created.)
12. make
(you should now have an httpd binary which you can copy to your Apache bin d
ir if
it is your first install then you need to "make install" as well)
13. cd ../php-5.x.y
14. cp php.ini-development /usr/local/lib/php.ini
15. You can edit /usr/local/lib/php.ini file to set PHP options.
Edit your httpd.conf or srm.conf file and add:
AddType application/x-httpd-php .php
Depending on your Apache install and Unix variant, there are many
possible ways to stop and restart the server. Below are some typical
lines used in restarting the server, for different apache/unix
installations. You should replace /path/to/ with the path to these
applications on your systems.
Example #3 Example commands for restarting Apache
1. Several Linux and SysV variants:
/etc/rc.d/init.d/httpd restart
2. Using apachectl scripts:
/path/to/apachectl stop
/path/to/apachectl start
3. httpdctl and httpsdctl (Using OpenSSL), similar to apachectl:
/path/to/httpsdctl stop
/path/to/httpsdctl start
4. Using mod_ssl, or another SSL server, you may want to manually
stop and start:
/path/to/apachectl stop
/path/to/apachectl startssl
The locations of the apachectl and http(s)dctl binaries often vary. If
your system has locate or whereis or which commands, these can assist
you in finding your server control programs.
Different examples of compiling PHP for apache are as follows:
./configure --with-apxs --with-pgsql
This will create a libphp7.so shared library that is loaded into Apache
using a LoadModule line in Apache's httpd.conf file. The PostgreSQL
support is embedded into this library.
./configure --with-apxs --with-pgsql=shared
This will create a libphp7.so shared library for Apache, but it will
also create a pgsql.so shared library that is loaded into PHP either by
using the extension directive in php.ini file or by loading it
explicitly in a script using the dl() function.
./configure --with-apache=/path/to/apache_source --with-pgsql
This will create a libmodphp7.a library, a mod_php7.c and some
accompanying files and copy this into the src/modules/php7 directory in
the Apache source tree. Then you compile Apache using
--activate-module=src/modules/php7/libphp7.a and the Apache build
system will create libphp7.a and link it statically into the httpd
binary. The PostgreSQL support is included directly into this httpd
binary, so the final result here is a single httpd binary that includes
all of Apache and all of PHP.
./configure --with-apache=/path/to/apache_source --with-pgsql=shared
Same as before, except instead of including PostgreSQL support directly
into the final httpd you will get a pgsql.so shared library that you
can load into PHP from either the php.ini file or directly using dl().
When choosing to build PHP in different ways, you should consider the
advantages and drawbacks of each method. Building as a shared object
will mean that you can compile apache separately, and don't have to
recompile everything as you add to, or change, PHP. Building PHP into
apache (static method) means that PHP will load and run faster. For
more information, see the Apache » web page on DSO support.
Note:
Apache's default httpd.conf currently ships with a section that
looks like this:
User nobody
Group "#-1"
Unless you change that to "Group nogroup" or something like that
("Group daemon" is also very common) PHP will not be able to open
files.
Note:
Make sure you specify the installed version of apxs when using
--with-apxs=/path/to/apxs . You must NOT use the apxs version that
is in the apache sources but the one that is actually installed on
your system.
__________________________________________________________________
__________________________________________________________________
Apache 2.x on Unix systems
This section contains notes and hints specific to Apache 2.x installs
+1 -1
View File
@@ -1,6 +1,6 @@
--------------------------------------------------------------------
The PHP License, version 3.01
Copyright (c) 1999 - 2015 The PHP Group. All rights reserved.
Copyright (c) 1999 - 2016 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"`; \
+574 -12
View File
@@ -1,6 +1,546 @@
PHP NEWS
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
?? Jan 2016 PHP 7.0.2
23 Jun 2016 PHP 7.0.8
- Core:
. Fixed bug #72218 (If host name cannot be resolved then PHP 7 crashes).
(Esminis at esminis dot lt)
. Fixed bug #72221 (segfault, past-the-end access). (Lauri Kenttä)
. Fixed bug #72268 (Integer Overflow in nl2br()). (Stas)
. Fixed bug #72275 (Integer Overflow in json_encode()/json_decode()/
json_utf8_to_utf16()). (Stas)
. Fixed bug #72400 (Integer Overflow in addcslashes/addslashes). (Stas)
. Fixed bug #72403 (Integer Overflow in Length of String-typed ZVAL). (Stas)
- FPM:
. Fixed bug #72308 (fastcgi_finish_request and logging environment
variables). (Laruence)
- GD:
. Fixed bug #72298 (pass2_no_dither out-of-bounds access). (Stas)
. Fixed bug #72337 (invalid dimensions can lead to crash) (Pierre)
. Fixed bug #72339 (Integer Overflow in _gd2GetHeader() resulting in
heap overflow). (Pierre)
. Fixed bug #72407 (NULL Pointer Dereference at _gdScaleVert). (Stas)
- Intl:
. Fixed bug #64524 (Add intl.use_exceptions to php.ini-*). (Anatol)
- mbstring:
. Fixed bug #72402 (_php_mb_regex_ereg_replace_exec - double free). (Stas)
- mcrypt:
. Fixed bug #72455 (Heap Overflow due to integer overflows). (Stas)
- PCRE:
. Fixed bug #72143 (preg_replace uses int instead of size_t). (Joe)
- PDO_pgsql:
. Fixed bug #71573 (Segfault (core dumped) if paramno beyond bound).
(Laruence)
. Fixed bug #72294 (Segmentation fault/invalid pointer in connection
with pgsql_stmt_dtor). (Anatol)
- Phpdbg:
. Fixed bug #72284 (phpdbg fatal errors with coverage). (Bob)
- Postgres:
. Fixed bug #72195 (pg_pconnect/pg_connect cause use-after-free). (Laruence)
. Fixed bug #72197 (pg_lo_create arbitrary read). (Anatol)
- SPL:
. Fixed bug #72262 (int/size_t confusion in SplFileObject::fread). (Stas)
. Fixed bug #72433 (Use After Free Vulnerability in PHP's GC algorithm and
unserialize). (Dmitry)
- Standard:
. Fixed bug #72017 (range() with float step produces unexpected result).
(Thomas Punt)
. Fixed bug #72193 (dns_get_record returns array containing elements of
type 'unknown'). (Laruence)
. Fixed bug #72229 (Wrong reference when serialize/unserialize an object).
(Laruence)
. Fixed bug #72300 (ignore_user_abort(false) has no effect). (Laruence)
- XML:
. Fixed bug #72206 (xml_parser_create/xml_parser_free leaks mem). (Joe)
- XMLRPC:
. Fixed bug #72155 (use-after-free caused by get_zval_xmlrpc_type).
(Joe, Laruence)
- WDDX:
. Fixed bug #72340 (Double Free Courruption in wddx_deserialize). (Stas)
- Zip:
. Fixed ug #72258 (ZipArchive converts filenames to unrecoverable form).
(Anatol)
. Fixed bug #72434 (ZipArchive class Use After Free Vulnerability in PHP's GC
algorithm and unserialize). (Dmitry)
26 May 2016 PHP 7.0.7
- Core:
. Fixed bug #72162 (use-after-free - error_reporting). (Laruence)
. Add compiler option to disable special case function calls. (Joe)
. Fixed bug #72101 (crash on complex code). (Dmitry)
. Fixed bug #72100 (implode() inserts garbage into resulting string when
joins very big integer). (Mikhail Galanin)
. Fixed bug #72057 (PHP Hangs when using custom error handler and typehint).
(Nikita Nefedov)
. Fixed bug #72038 (Function calls with values to a by-ref parameter don't
always throw a notice). (Bob)
. Fixed bug #71737 (Memory leak in closure with parameter named $this).
(Nikita)
. Fixed bug #72059 (?? is not allowed on constant expressions). (Bob, Marcio)
. Fixed bug #72159 (Imported Class Overrides Local Class Name). (Nikita)
- Curl:
. Fixed bug #68658 (Define CURLE_SSL_CACERT_BADFILE). (Pierrick)
- DBA:
. Fixed bug #72157 (use-after-free caused by dba_open). (Shm, Laruence)
- GD:
. Fixed bug #72227 (imagescale out-of-bounds read). (Stas)
- Intl:
. Fixed #72241 (get_icu_value_internal out-of-bounds read). (Stas)
- JSON:
. Fixed bug #72069 (Behavior \JsonSerializable different from json_encode).
(Laruence)
- Mbstring:
. Fixed bug #72164 (Null Pointer Dereference - mb_ereg_replace). (Laruence)
- OCI8:
. Fixed bug #71600 (oci_fetch_all segfaults when selecting more than eight
columns). (Tian Yang)
- Opcache:
. Fixed bug #72014 (Including a file with anonymous classes multiple times
leads to fatal error). (Laruence)
- OpenSSL:
. Fixed bug #72165 (Null pointer dereference - openssl_csr_new). (Anatol)
- PCNTL:
. Fixed bug #72154 (pcntl_wait/pcntl_waitpid array internal structure
overwrite). (Laruence)
- POSIX:
. Fixed bug #72133 (php_posix_group_to_array crashes if gr_passwd is NULL).
(esminis at esminis dot lt)
- Postgres:
. Fixed bug #72028 (pg_query_params(): NULL converts to empty string).
(Laruence)
. Fixed bug #71062 (pg_convert() doesn't accept ISO 8601 for datatype
timestamp). (denver at timothy dot io)
. Fixed bug #72151 (mysqli_fetch_object changed behaviour). (Anatol)
- Reflection:
. Fixed bug #72174 (ReflectionProperty#getValue() causes __isset call).
(Nikita)
- Session:
. Fixed bug #71972 (Cyclic references causing session_start(): Failed to
decode session object). (Laruence)
- Sockets:
. Added socket_export_stream() function for getting a stream compatible
resource from a socket resource. (Chris Wright, Bob)
- SPL:
. Fixed bug #72051 (The reference in CallbackFilterIterator doesn't work as
expected). (Laruence)
- SQLite3:
. Fixed bug #68849 (bindValue is not using the right data type). (Anatol)
- Standard:
. Fixed bug #72075 (Referencing socket resources breaks stream_select).
(Laruence)
. Fixed bug #72031 (array_column() against an array of objects discards all
values matching null). (Nikita)
28 Apr 2016 PHP 7.0.6
- Core:
. Fixed bug #71930 (_zval_dtor_func: Assertion `(arr)->gc.refcount <= 1'
failed). (Laruence)
. Fixed bug #71922 (Crash on assert(new class{})). (Nikita)
. Fixed bug #71914 (Reference is lost in "switch"). (Laruence)
. Fixed bug #71871 (Interfaces allow final and abstract functions). (Nikita)
. Fixed Bug #71859 (zend_objects_store_call_destructors operates on realloced
memory, crashing). (Laruence)
. Fixed bug #71841 (EG(error_zval) is not handled well). (Laruence)
. Fixed bug #71750 (Multiple Heap Overflows in php_raw_url_encode/
php_url_encode). (Stas)
. Fixed bug #71731 (Null coalescing operator and ArrayAccess). (Nikita)
. Fixed bug #71609 (Segmentation fault on ZTS with gethostbyname). (krakjoe)
. Fixed bug #71414 (Inheritance, traits and interfaces). (krakjoe)
. Fixed bug #71359 (Null coalescing operator and magic). (krakjoe)
. Fixed bug #71334 (Cannot access array keys while uksort()). (Nikita)
. Fixed bug #69659 (ArrayAccess, isset() and the offsetExists method).
(Nikita)
. Fixed bug #69537 (__debugInfo with empty string for key gives error).
(krakjoe)
. Fixed bug #62059 (ArrayObject and isset are not friends). (Nikita)
. Fixed bug #71980 (Decorated/Nested Generator is Uncloseable in Finally).
(Nikita)
- BCmath:
. Fixed bug #72093 (bcpowmod accepts negative scale and corrupts
_one_ definition). (Stas)
- Curl:
. Fixed bug #71831 (CURLOPT_NOPROXY applied as long instead of string).
(Michael Sierks)
- Date:
. Fixed bug #71889 (DateInterval::format Segmentation fault). (Thomas Punt)
- EXIF:
. Fixed bug #72094 (Out of bounds heap read access in exif header processing). (Stas)
- GD:
. Fixed bug #71912 (libgd: signedness vulnerability). (CVE-2016-3074) (Stas)
- Intl:
. Fixed bug #71516 (IntlDateFormatter looses locale if pattern is set via
constructor). (Anatol)
. Fixed bug #70455 (Missing constant: IntlChar::NO_NUMERIC_VALUE). (Anatol)
. Fixed bug #70451, #70452 (Inconsistencies in return values of IntlChar
methods). (Daniel Persson)
. Fixed bug #68893 (Stackoverflow in datefmt_create). (Anatol)
. Fixed bug #66289 (Locale::lookup incorrectly returns en or en_US if locale
is empty). (Anatol)
. Fixed bug #70484 (selectordinal doesn't work with named parameters).
(Anatol)
. Fixed bug #72061 (Out-of-bounds reads in zif_grapheme_stripos with negative
offset). (Stas)
- ODBC:
. Fixed bug #63171 (Script hangs after max_execution_time). (Remi)
- Opcache:
. Fixed bug #71843 (null ptr deref ZEND_RETURN_SPEC_CONST_HANDLER).
(Laruence)
- PDO:
. Fixed bug #52098 (Own PDOStatement implementation ignore __call()).
(Daniel kalaspuffar, Julien)
. Fixed bug #71447 (Quotes inside comments not properly handled). (Matteo)
- PDO_DBlib:
. Fixed bug #71943 (dblib_handle_quoter needs to allocate an extra byte).
(Adam Baratz)
. Add DBLIB-specific attributes for controlling timeouts. (Adam Baratz)
- PDO_pgsql:
. Fixed bug #62498 (pdo_pgsql inefficient when getColumnMeta() is used).
(Joseph Bylund)
- Postgres:
. Fixed bug #71820 (pg_fetch_object binds parameters before call
constructor). (Anatol)
. Fixed bug #71998 (Function pg_insert does not insert when column
type = inet). (Anatol)
- SOAP:
. Fixed bug #71986 (Nested foreach assign-by-reference creates broken
variables). (Laruence)
- SPL:
. Fixed bug #71838 (Deserializing serialized SPLObjectStorage-Object can't
access properties in PHP). (Nikita)
. Fixed bug #71735 (Double-free in SplDoublyLinkedList::offsetSet). (Stas)
. Fixed bug #67582 (Cloned SplObjectStorage with overwritten getHash fails
offsetExists()). (Nikita)
. Fixed bug #52339 (SPL autoloader breaks class_exists()). (Nikita)
- Standard:
. Fixed bug #71995 (Returning the same var twice from __sleep() produces
broken serialized data). (Laruence)
. Fixed bug #71940 (Unserialize crushes on restore object reference).
(Laruence)
. Fixed bug #71969 (str_replace returns an incorrect resulting array after
a foreach by reference). (Laruence)
. Fixed bug #71891 (header_register_callback() and
register_shutdown_function()). (Laruence)
. Fixed bug #71884 (Null pointer deref (segfault) in
stream_context_get_default). (Laruence)
. Fixed bug #71840 (Unserialize accepts wrongly data). (Ryat, Laruence)
. Fixed bug #71837 (Wrong arrays behaviour). (Laruence)
. Fixed bug #71827 (substr_replace bug, string length). (krakjoe)
. Fixed bug #67512 (php_crypt() crashes if crypt_r() does not exist or
_REENTRANT is not defined). (Nikita)
. Fixed bug #72116 (array_fill optimization breaks implementation). (Bob)
- XML:
. Fixed bug #72099 (xml_parse_into_struct segmentation fault). (Stas)
- Zip:
. Fixed bug #71923 (integer overflow in ZipArchive::getFrom*).
(CVE-2016-3078) (Stas)
31 Mar 2016 PHP 7.0.5
- Core:
. Huge pages disabled by default. (Rasmus)
. Added ability to enable huge pages in Zend Memory Manager through
the environment variable USE_ZEND_ALLOC_HUGE_PAGES=1. (Dmitry)
. Fixed bug #71756 (Call-by-reference widens scope to uninvolved functions
when used in switch). (Laruence)
. Fixed bug #71729 (Possible crash in zend_bin_strtod, zend_oct_strtod,
zend_hex_strtod). (Laruence)
. Fixed bug #71695 (Global variables are reserved before execution).
(Laruence)
. Fixed bug #71629 (Out-of-bounds access in php_url_decode in context
php_stream_url_wrap_rfc2397). (mt at debian dot org)
. Fixed bug #71622 (Strings used in pass-as-reference cannot be used to
invoke C::$callable()). (Bob)
. Fixed bug #71596 (Segmentation fault on ZTS with date function
(setlocale)). (Anatol)
. Fixed bug #71535 (Integer overflow in zend_mm_alloc_heap()). (Dmitry)
. Fixed bug #71470 (Leaked 1 hashtable iterators). (Nikita)
. Fixed bug #71575 (ISO C does not allow extra ‘;’ outside of a function).
(asgrim)
. Fixed bug #71724 (yield from does not count EOLs). (Nikita)
. Fixed bug #71767 (ReflectionMethod::getDocComment returns the wrong
comment). (Grigorii Sokolik)
. Fixed bug #71806 (php_strip_whitespace() fails on some numerical values).
(Nikita)
. Fixed bug #71624 (`php -R` (PHP_MODE_PROCESS_STDIN) is broken).
(Sean DuBois)
- CLI Server:
. Fixed bug #69953 (Support MKCALENDAR request method). (Christoph)
- Curl:
. Fixed bug #71694 (Support constant CURLM_ADDED_ALREADY). (mpyw)
- Date:
. Fixed bug #71635 (DatePeriod::getEndDate segfault). (Thomas Punt)
- Fileinfo:
. Fixed bug #71527 (Buffer over-write in finfo_open with malformed magic
file). (CVE-2015-8865) (Anatol)
- libxml:
. Fixed bug #71536 (Access Violation crashes php-cgi.exe). (Anatol)
- mbstring:
. Fixed bug #71906 (AddressSanitizer: negative-size-param (-1) in
mbfl_strcut). (CVE-2016-4073) (Stas)
- ODBC:
. Fixed bug #47803, #69526 (Executing prepared statements is succesfull only
for the first two statements). (einavitamar at gmail dot com, Anatol)
- PCRE:
. Fixed bug #71659 (segmentation fault in pcre running twig tests).
(nish dot aravamudan at canonical dot com)
- PDO_DBlib:
. Fixed bug #54648 (PDO::MSSQL forces format of datetime fields).
(steven dot lambeth at gmx dot de, Anatol)
- Phar:
. Fixed bug #71625 (Crash in php7.dll with bad phar filename). (Anatol)
. Fixed bug #71317 (PharData fails to open specific file). (Jos Elstgeest)
. Fixed bug #71860 (Invalid memory write in phar on filename with \0 in
name). (CVE-2016-4072) (Stas)
- phpdbg:
. Fixed crash when advancing (except step) inside an internal function. (Bob)
- Session:
. Fixed bug #71683 (Null pointer dereference in zend_hash_str_find_bucket).
(Yasuo)
- SNMP:
. Fixed bug #71704 (php_snmp_error() Format String Vulnerability).
(CVE-2016-4071) (andrew at jmpesp dot org)
- SPL:
. Fixed bug #71617 (private properties lost when unserializing ArrayObject).
(Nikita)
- Standard:
. Fixed bug #71660 (array_column behaves incorrectly after foreach by
reference). (Laruence)
. Fixed bug #71798 (Integer Overflow in php_raw_url_encode). (CVE-2016-4070)
(taoguangchen at icloud dot com, Stas)
- Zip:
. Update bundled libzip to 1.1.2. (Remi, Anatol)
03 Mar 2016 PHP 7.0.4
- Core:
. Fixed bug (Low probability segfault in zend_arena). (Laruence)
. Fixed bug #71441 (Typehinted Generator with return in try/finally crashes).
(Bob)
. Fixed bug #71442 (forward_static_call crash). (Laruence)
. Fixed bug #71443 (Segfault using built-in webserver with intl using
symfony). (Laruence)
. Fixed bug #71449 (An integer overflow bug in php_implode()). (Stas)
. Fixed bug #71450 (An integer overflow bug in php_str_to_str_ex()). (Stas)
. Fixed bug #71474 (Crash because of VM stack corruption on Magento2).
(Dmitry)
. Fixed bug #71485 (Return typehint on internal func causes Fatal error
when it throws exception). (Laruence)
. Fixed bug #71529 (Variable references on array elements don't work when
using count). (Nikita)
. Fixed bug #71601 (finally block not executed after yield from). (Bob)
. Fixed bug #71637 (Multiple Heap Overflow due to integer overflows in
xml/filter_url/addcslashes). (CVE-2016-4344, CVE-2016-4345, CVE-2016-4346)
(Stas)
- CLI server:
. Fixed bug #71559 (Built-in HTTP server, we can download file in web by bug).
(Johannes, Anatol)
- CURL:
. Fixed bug #71523 (Copied handle with new option CURLOPT_HTTPHEADER crashes
while curl_multi_exec). (Laruence)
. Fixed memory leak in curl_getinfo(). (Leigh)
- Date:
. Fixed bug #71525 (Calls to date_modify will mutate timelib_rel_time,
causing date_date_set issues). (Sean DuBois)
- Fileinfo:
. Fixed bug #71434 (finfo throws notice for specific python file). (Laruence)
- FPM:
. Fixed bug #62172 (FPM not working with Apache httpd 2.4 balancer/fcgi
setup). (Matt Haught, Remi)
. Fixed bug #71269 (php-fpm dumped core). (Mickaël)
- Opcache:
. Fixed bug #71584 (Possible use-after-free of ZCG(cwd) in Zend Opcache).
(Yussuf Khalil)
- PCRE:
. Fixed bug #71537 (PCRE segfault from Opcache). (Laruence)
- phpdbg:
. Fixed inherited functions from unspecified files being included in
phpdbg_get_executable(). (Bob)
- SOAP:
. Fixed bug #71610 (Type Confusion Vulnerability - SOAP /
make_http_soap_request()). (CVE-2016-3185) (Stas)
- Standard:
. Fixed bug #71603 (compact() maintains references in php7). (Laruence)
. Fixed bug #70720 (strip_tags improper php code parsing). (Julien)
- XMLRPC:
. Fixed bug #71501 (xmlrpc_encode_request ignores encoding option). (Hieu Le)
- Zip:
. Fixed bug #71561 (NULL pointer dereference in Zip::ExtractTo). (Laruence)
04 Feb 2016 PHP 7.0.3
- Core:
. Added support for new HTTP 451 code. (Julien)
. Fixed bug #71039 (exec functions ignore length but look for NULL
termination). (Anatol)
. Fixed bug #71089 (No check to duplicate zend_extension). (Remi)
. Fixed bug #71201 (round() segfault on 64-bit builds). (Anatol)
. Fixed bug #71221 (Null pointer deref (segfault) in get_defined_vars via
ob_start). (hugh at allthethings dot co dot nz)
. Fixed bug #71248 (Wrong interface is enforced). (Dmitry)
. Fixed bug #71273 (A wrong ext directory setup in php.ini leads to crash).
(Anatol)
. Fixed Bug #71275 (Bad method called on cloning an object having a trait).
(Bob)
. Fixed bug #71297 (Memory leak with consecutive yield from). (Bob)
. Fixed bug #71300 (Segfault in zend_fetch_string_offset). (Laruence)
. Fixed bug #71314 (var_export(INF) prints INF.0). (Andrea)
. Fixed bug #71323 (Output of stream_get_meta_data can be falsified by its
input). (Leo Gaspard)
. Fixed bug #71336 (Wrong is_ref on properties as exposed via
get_object_vars()). (Laruence)
. Fixed bug #71459 (Integer overflow in iptcembed()). (Stas)
- Apache2handler:
. Fix >2G Content-Length headers in apache2handler. (Adam Harvey)
- CURL:
. Fixed bug #71227 (Can't compile php_curl statically). (Anatol)
. Fixed bug #71225 (curl_setopt() fails to set CURLOPT_POSTFIELDS with
reference to CURLFile). (Laruence)
- GD:
. Improved fix for bug #70976. (Remi)
- Interbase:
. Fixed Bug #71305 (Crash when optional resource is omitted).
(Laruence, Anatol)
- LDAP:
. Fixed bug #71249 (ldap_mod_replace/ldap_mod_add store value as string
"Array"). (Laruence)
- mbstring:
. Fixed bug #71397 (mb_send_mail segmentation fault). (Andrea, Yasuo)
- OpenSSL:
. Fixed bug #71475 (openssl_seal() uninitialized memory usage). (Stas)
- PCRE:
. Upgraded pcrelib to 8.38. (CVE-2015-8383, CVE-2015-8386, CVE-2015-8387,
CVE-2015-8389, CVE-2015-8390, CVE-2015-8391, CVE-2015-8393, CVE-2015-8394)
- Phar:
. Fixed bug #71354 (Heap corruption in tar/zip/phar parser). (CVE-2016-4342)
(Stas)
. Fixed bug #71331 (Uninitialized pointer in phar_make_dirstream()).
(CVE-2016-4343) (Stas)
. Fixed bug #71391 (NULL Pointer Dereference in phar_tar_setupmetadata()).
(Stas)
. Fixed bug #71488 (Stack overflow when decompressing tar archives).
(CVE-2016-2554) (Stas)
- SOAP:
. Fixed bug #70979 (crash with bad soap request). (Anatol)
- SPL:
. Fixed bug #71204 (segfault if clean spl_autoload_funcs while autoloading).
(Laruence)
. Fixed bug #71202 (Autoload function registered by another not activated
immediately). (Laruence)
. Fixed bug #71311 (Use-after-free vulnerability in SPL(ArrayObject,
unserialize)). (Sean Heelan)
. Fixed bug #71313 (Use-after-free vulnerability in SPL(SplObjectStorage,
unserialize)). (Sean Heelan)
- Standard:
. Fixed bug #71287 (Error message contains hexadecimal instead of decimal
number). (Laruence)
. Fixed bug #71264 (file_put_contents() returns unexpected value when
filesystem runs full). (Laruence)
. Fixed bug #71245 (file_get_contents() ignores "header" context option if
it's a reference). (Laruence)
. Fixed bug #71220 (Null pointer deref (segfault) in compact via ob_start).
(hugh at allthethings dot co dot nz)
. Fixed bug #71190 (substr_replace converts integers in original $search
array to strings). (Laruence)
. Fixed bug #71188 (str_replace converts integers in original $search array
to strings). (Laruence)
. Fixed bug #71132, #71197 (range() segfaults). (Thomas Punt)
- WDDX:
. Fixed bug #71335 (Type Confusion in WDDX Packet Deserialization). (Stas)
07 Jan 2016 PHP 7.0.2
- Core:
. Fixed bug #71165 (-DGC_BENCH=1 doesn't work on PHP7).
@@ -34,10 +574,17 @@ PHP NEWS
- Filter:
. Fixed bug #71063 (filter_input(INPUT_ENV, ..) does not work). (Reeze Xia)
- FPM:
. Fixed bug #70755 (fpm_log.c memory leak and buffer overflow). (Stas)
- FTP:
. Implemented FR #55651 (Option to ignore the returned FTP PASV address).
(abrender at elitehosts dot com)
- GD:
. Fixed bug #70976 (Memory Read via gdImageRotateInterpolated Array Index
Out of Bounds). (CVE-2016-1903) (emmanuel dot law at gmail dot com)
- Mbstring:
. Fixed bug #71066 (mb_send_mail: Program terminated with signal SIGSEGV,
Segmentation fault). (Laruence)
@@ -62,11 +609,25 @@ PHP NEWS
. Fixed bug #71153 (Performance Degradation in ArrayIterator with large
arrays). (Nikita)
- Standard:
. Fixed bug #71270 (Heap BufferOver Flow in escapeshell functions).
(CVE-2016-1904) (emmanuel dot law at gmail dot com)
- WDDX:
. Fixed bug #70661 (Use After Free Vulnerability in WDDX Packet
Deserialization). (taoguangchen at icloud dot com)
. Fixed bug #70741 (Session WDDX Packet Deserialization Type Confusion
Vulnerability). (taoguangchen at icloud dot com)
- XMLRPC:
. Fixed bug #70728 (Type Confusion Vulnerability in PHP_to_XMLRPC_worker).
(Julien)
17 Dec 2015, PHP 7.0.1
- Core:
. Fixed bug #71105 (Format String Vulnerability in Class Name Error Message).
(andrew at jmpesp dot org)
(CVE-2015-8617) (andrew at jmpesp dot org)
. Fixed bug #70831 (Compile fails on system with 160 CPUs). (Daniel Axtens)
. Fixed bug #71006 (symbol referencing errors on Sparc/Solaris). (Dmitry)
. Fixed bug #70997 (When using parentClass:: instead of parent::, static
@@ -99,7 +660,7 @@ PHP NEWS
- Intl:
. Fixed bug #71020 (Use after free in Collator::sortWithSortKeys).
(emmanuel dot law at gmail dot com, Laruence)
(CVE-2015-8616) (emmanuel dot law at gmail dot com, Laruence)
- Mysqlnd:
. Fixed bug #68077 (LOAD DATA LOCAL INFILE / open_basedir restriction).
@@ -120,6 +681,9 @@ PHP NEWS
. Fixed bug #70977 (Segmentation fault with opcache.huge_code_pages=1).
(Laruence)
- PDO_Firebird:
. Fixed bug #60052 (Integer returned as a 64bit integer on X64_86). (Mariuz)
- Phpdbg:
. Fixed stderr being written to stdout. (Bob)
@@ -129,6 +693,10 @@ PHP NEWS
. Fixed bug #70982 (setStaticPropertyValue behaviors inconsistently with
5.6). (Laruence)
- Soap:
. Fixed bug #70993 (Array key references break argument processing).
(Laruence)
- SPL:
. Fixed bug #71028 (Undefined index with ArrayIterator). (Laruence)
@@ -145,13 +713,6 @@ PHP NEWS
- Streams/Socket:
. Add IPV6_V6ONLY constant / make it usable in stream contexts. (Bob)
- Soap:
. Fixed bug #70993 (Array key references break argument processing).
(Laruence)
- PDO_Firebird:
. Fixed bug #60052 (Integer returned as a 64bit integer on X64_86). (Mariuz)
03 Dec 2015, PHP 7.0.0
- Core:
@@ -595,7 +1156,7 @@ PHP NEWS
. Implemented FR #70438 (Add IV parameter for openssl_seal and openssl_open)
(Jakub Zelenka)
. Fixed bug #70014 (openssl_random_pseudo_bytes() is not cryptographically
secure). (Stas)
secure). (CVE-2015-8867) (Stas)
. Fixed bug #69882 (OpenSSL error "key values mismatch" after
openssl_pkcs12_read with extra cert). (Tomasz Sawicki)
. Added "alpn_protocols" SSL context option allowing encrypted client/server
@@ -843,7 +1404,8 @@ PHP NEWS
(Daniel Lowrey & Bob Weinand)
- Zip:
. Fixed bug #70322 (ZipArchive::close() doesn't indicate errors). (cmb)
. Fixed bug #70322 (ZipArchive::close() doesn't indicate errors).
(CVE-2014-9767) (cmb)
. Fixed bug #70350 (ZipArchive::extractTo allows for directory traversal when
creating directories). (neal at fb dot com)
. Added ZipArchive::setCompressionName and ZipArchive::setCompressionIndex
+1 -1
View File
@@ -172,7 +172,7 @@ PHP_FUNCTION(module_name_drawtext)
zval *image = NULL;
zval *font = NULL;
if (zend_parse_parameters(argc TSRMLS_CC, "rsrll|l", &image, &text, &text_len, &font, &x, &y, &color) == FAILURE)
if (zend_parse_parameters(argc, "rsrll|l", &image, &text, &text_len, &font, &x, &y, &color) == FAILURE)
return;
if (image) {
+37 -37
View File
@@ -8,98 +8,98 @@ API adjustment to the old output control code:
Checking output control layers status:
// Using OG()
php_output_get_status(TSRMLS_C);
php_output_get_status();
Starting the default output handler:
// php_start_ob_buffer(NULL, 0, 1 TSRMLS_CC);
php_output_start_default(TSRMLS_C);
// php_start_ob_buffer(NULL, 0, 1);
php_output_start_default();
Starting an user handler by zval:
// php_start_ob_buffer(zhandler, chunk_size, erase TSRMLS_CC);
php_output_start_user(zhandler, chunk_size, flags TSRMLS_CC);
// php_start_ob_buffer(zhandler, chunk_size, erase);
php_output_start_user(zhandler, chunk_size, flags);
Starting an internal handler whithout context:
// php_ob_set_internal_handler(my_php_output_handler_func_t, buffer_size, "output handler name", erase TSRMLS_CC);
php_output_start_internal(handler_name, handler_name_len, my_php_output_handler_func_t, chunk_size, flags TSRMLS_CC);
// php_ob_set_internal_handler(my_php_output_handler_func_t, buffer_size, "output handler name", erase);
php_output_start_internal(handler_name, handler_name_len, my_php_output_handler_func_t, chunk_size, flags);
Starting an internal handler with context:
// not possible with old API
php_output_handler *h;
h = php_output_handler_create_internal(handler_name, handler_name_len, my_php_output_handler_context_func_t, chunk_size, flags TSRMLS_CC);
h = php_output_handler_create_internal(handler_name, handler_name_len, my_php_output_handler_context_func_t, chunk_size, flags);
php_output_handler_set_context(h, my_context, my_context_dtor);
php_output_handler_start(h TSRMLS_CC);
php_output_handler_start(h);
Testing whether a certain output handler has already been started:
// php_ob_handler_used("output handler name" TSRMLS_CC);
php_output_handler_started(handler_name, handler_name_len TSRMLS_CC);
// php_ob_handler_used("output handler name");
php_output_handler_started(handler_name, handler_name_len);
Flushing one output buffer:
// php_end_ob_buffer(1, 1 TSRMLS_CC);
php_output_flush(TSRMLS_C);
// php_end_ob_buffer(1, 1);
php_output_flush();
Flushing all output buffers:
// not possible with old API
php_output_flush_all(TSRMLS_C);
php_output_flush_all();
Cleaning one output buffer:
// php_ob_end_buffer(0, 1 TSRMLS_CC);
php_output_clean(TSRMLS_C);
// php_ob_end_buffer(0, 1);
php_output_clean();
Cleaning all output buffers:
// not possible with old API
php_output_clean_all(TSRMLS_C);
php_output_clean_all();
Discarding one output buffer:
// php_ob_end_buffer(0, 0 TSRMLS_CC);
php_output_discard(TSRMLS_C);
// php_ob_end_buffer(0, 0);
php_output_discard();
Discarding all output buffers:
// php_ob_end_buffers(0 TSRMLS_CC);
php_output_discard_all(TSRMLS_C);
// php_ob_end_buffers(0);
php_output_discard_all();
Stopping (and dropping) one output buffer:
// php_ob_end_buffer(1, 0 TSRMLS_CC)
php_output_end(TSRMLS_C);
// php_ob_end_buffer(1, 0)
php_output_end();
Stopping (and dropping) all output buffers:
// php_ob_end_buffers(1, 0 TSRMLS_CC);
php_output_end_all(TSRMLS_C);
// php_ob_end_buffers(1, 0);
php_output_end_all();
Retrieving output buffers contents:
// php_ob_get_buffer(zstring TSRMLS_CC);
php_output_get_contents(zstring TSRMLS_CC);
// php_ob_get_buffer(zstring);
php_output_get_contents(zstring);
Retrieving output buffers length:
// php_ob_get_length(zlength TSRMLS_CC);
php_output_get_length(zlength TSRMLS_CC);
// php_ob_get_length(zlength);
php_output_get_length(zlength);
Retrieving output buffering level:
// OG(nesting_level);
php_output_get_level(TSRMLS_C);
php_output_get_level();
Issue a warning because of an output handler conflict:
// php_ob_init_conflict("to be started handler name", "to be tested if already started handler name" TSRMLS_CC);
php_output_handler_conflict(new_handler_name, new_handler_name_len, set_handler_name, set_handler_name_len TSRMLS_CC);
// php_ob_init_conflict("to be started handler name", "to be tested if already started handler name");
php_output_handler_conflict(new_handler_name, new_handler_name_len, set_handler_name, set_handler_name_len);
Registering a conflict checking function, which will be checked prior starting the handler:
// not possible with old API, unless hardcoding into output.c
php_output_handler_conflict_register(handler_name, handler_name_len, my_php_output_handler_conflict_check_t TSRMLS_CC);
php_output_handler_conflict_register(handler_name, handler_name_len, my_php_output_handler_conflict_check_t);
Registering a reverse conflict checking function, which will be checked prior starting the specified foreign handler:
// not possible with old API
php_output_handler_reverse_conflict_register(foreign_handler_name, foreign_handler_name_len, my_php_output_handler_conflict_check_t TSRMLS_CC);
php_output_handler_reverse_conflict_register(foreign_handler_name, foreign_handler_name_len, my_php_output_handler_conflict_check_t);
Facilitating a context from within an output handler callable with ob_start():
// not possible with old API
php_output_handler_hook(PHP_OUTPUT_HANDLER_HOOK_GET_OPAQ, (void *) &custom_ctx_ptr_ptr TSRMLS_CC);
php_output_handler_hook(PHP_OUTPUT_HANDLER_HOOK_GET_OPAQ, (void *) &custom_ctx_ptr_ptr);
Disabling of the output handler by itself:
//not possible with old API
php_output_handler_hook(PHP_OUTPUT_HANDLER_HOOK_DISABLE, NULL TSRMLS_CC);
php_output_handler_hook(PHP_OUTPUT_HANDLER_HOOK_DISABLE, NULL);
Marking an output handler immutable by itself because of irreversibility of its operation:
// not possible with old API
php_output_handler_hook(PHP_OUTPUT_HANDLER_HOOK_IMMUTABLE, NULL TSRMLS_CC);
php_output_handler_hook(PHP_OUTPUT_HANDLER_HOOK_IMMUTABLE, NULL);
Restarting the output handler because of a CLEAN operation:
// not possible with old API
+16 -16
View File
@@ -13,8 +13,8 @@ meaningful error messages.
Prototypes
----------
/* Implemented. */
int zend_parse_parameters(int num_args TSRMLS_DC, char *type_spec, ...);
int zend_parse_parameters_ex(int flags, int num_args TSRMLS_DC, char *type_spec, ...);
int zend_parse_parameters(int num_args, char *type_spec, ...);
int zend_parse_parameters_ex(int flags, int num_args, char *type_spec, ...);
The zend_parse_parameters() function takes the number of parameters
passed to the extension function, the type specifier string, and the
@@ -30,7 +30,7 @@ resources cannot be auto-converted.
PHP 5.5 includes a new function:
int zend_parse_parameter(int flags, int arg_num TSRMLS_DC, zval **arg, const char *spec, ...);
int zend_parse_parameter(int flags, int arg_num, zval **arg, const char *spec, ...);
This function behaves like zend_parse_parameters_ex() except that instead of
reading the arguments from the stack, it receives a single zval to convert
@@ -63,10 +63,10 @@ Type specifiers
o - object of any type (zval*)
O - object of specific type given by class entry (zval*, zend_class_entry)
p - valid path (string without null bytes in the middle) and its length (char*, size_t)
P - valid path (string without null bytes in the middle) as zend_string (zend_string)
P - valid path (string without null bytes in the middle) as zend_string (zend_string*)
r - resource (zval*)
s - string (with possible null bytes) and its length (char*, size_t)
S - string (with possible null bytes) as zend_string (zend_string)
S - string (with possible null bytes) as zend_string (zend_string*)
z - the actual zval (zval*)
* - variable arguments list (0 or more)
+ - variable arguments list (1 or more)
@@ -97,11 +97,11 @@ Both mistakes might cause memory corruptions and segfaults:
1)
char *str;
long str_len; /* XXX THIS IS WRONG!! Use size_t instead. */
zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &str, &str_len)
zend_parse_parameters(ZEND_NUM_ARGS(), "s", &str, &str_len)
2)
int num; /* XXX THIS IS WRONG!! Use zend_long instead. */
zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "l", &num)
zend_parse_parameters(ZEND_NUM_ARGS(), "l", &num)
If you're in doubt, use check_parameters.php script to the parameters
and their types (it can be found in ./scripts/dev/ directory of PHP sources):
@@ -116,7 +116,7 @@ zend_long l;
char *s;
size_t s_len;
zval *param;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "lsz",
if (zend_parse_parameters(ZEND_NUM_ARGS(), "lsz",
&l, &s, &s_len, &param) == FAILURE) {
return;
}
@@ -126,7 +126,7 @@ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "lsz",
zval *obj;
double d = 0.5;
zend_class_entry *my_ce;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "O|d",
if (zend_parse_parameters(ZEND_NUM_ARGS(), "O|d",
&obj, my_ce, &d) == FAILURE) {
return;
}
@@ -136,7 +136,7 @@ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "O|d",
If null is passed for object, obj will be set to NULL. */
zval *obj;
zval *arr;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "o!a",
if (zend_parse_parameters(ZEND_NUM_ARGS(), "o!a",
&obj, &arr) == FAILURE) {
return;
}
@@ -144,7 +144,7 @@ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "o!a",
/* Gets a separated array which can also be null. */
zval *arr;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "a/!",
if (zend_parse_parameters(ZEND_NUM_ARGS(), "a/!",
&arr) == FAILURE) {
return;
}
@@ -161,10 +161,10 @@ char *s;
*/
size_t length;
if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, ZEND_NUM_ARGS() TSRMLS_CC,
if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, ZEND_NUM_ARGS(),
"lll", &l1, &l2, &l3) == SUCCESS) {
/* manipulate longs */
} else if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, ZEND_NUM_ARGS() TSRMLS_CC,
} else if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, ZEND_NUM_ARGS(),
"s", &s, &length) == SUCCESS) {
/* manipulate string */
} else {
@@ -180,7 +180,7 @@ int i, num_varargs;
zval *varargs = NULL;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "*", &varargs, &num_varargs) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS(), "*", &varargs, &num_varargs) == FAILURE) {
return;
}
@@ -200,7 +200,7 @@ size_t str_len;
int i, num_varargs;
zval *varargs = NULL;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s+", &str, &str_len, &varargs, &num_varargs) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS(), "s+", &str, &str_len, &varargs, &num_varargs) == FAILURE) {
return;
}
@@ -214,7 +214,7 @@ zval *array;
int i, num_varargs;
zval *varargs = NULL;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "a*l", &array, &varargs, &num_varargs, &num) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS(), "a*l", &array, &varargs, &num_varargs, &num) == FAILURE) {
return;
}
+19 -44
View File
@@ -5,17 +5,16 @@
5. ext/standard crypt
6. ext/standard crypt's blowfish implementation
7. Sqlite/Sqlite3 ext/sqlite3 ext/sqlite
8. ext/json/json_parser
9. ext/standard/rand
10. ext/standard/scanf
11. ext/standard/strnatcmp.c
12. ext/standard/uuencode
13. libxmlrpc ext/xmlrpc
14. libzip ext/zip
15. main/snprintf.c
16. main/strlcat
17. main/strlcpy
18. libgd see ext/gd/libgd/COPYING
8. ext/standard/rand
9. ext/standard/scanf
10. ext/standard/strnatcmp.c
11. ext/standard/uuencode
12. libxmlrpc ext/xmlrpc
13. libzip ext/zip
14. main/snprintf.c
15. main/strlcat
16. main/strlcpy
17. libgd see ext/gd/libgd/COPYING
5. ext/standard crypt
@@ -104,31 +103,7 @@ a legal notice, here is a blessing:
May you share freely, never taking more than you give.
8. ext/json/json_parser
Copyright (c) 2005 JSON.org
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
The Software shall be used for Good, not Evil.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
9. ext/standard/rand
8. ext/standard/rand
The following php_mt_...() functions are based on a C++ class MTRand by
Richard J. Wagner. For more information see the web page at
http://www-personal.engin.umich.edu/~wagnerr/MersenneTwister.html
@@ -181,7 +156,7 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
10. ext/standard/scanf
9. ext/standard/scanf
scanf.c --
This file contains the base code which implements sscanf and by extension
@@ -227,7 +202,7 @@ authors grant the U.S. Government and others acting in its behalf
permission to use and distribute the software in accordance with the
terms specified in this license.
11. ext/standard/strnatcmp.c
10. ext/standard/strnatcmp.c
strnatcmp.c -- Perform 'natural order' comparisons of strings in C.
Copyright (C) 2000 by Martin Pool <mbp@humbug.org.au>
@@ -248,7 +223,7 @@ freely, subject to the following restrictions:
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
12. ext/standard/uuencode
11. ext/standard/uuencode
Portions of this code are based on Berkeley's uuencode/uudecode
implementation.
@@ -284,7 +259,7 @@ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
13. libxmlrpc ext/xmlrpc
12. libxmlrpc ext/xmlrpc
Copyright 2000 Epinions, Inc.
@@ -308,7 +283,7 @@ OF OR IN CONNECTION WITH THE SOFTWARE (HOWEVER ARISING, INCLUDING
NEGLIGENCE), EVEN IF EPINIONS, INC. IS AWARE OF THE POSSIBILITY OF SUCH
DAMAGES.
14. libzip ext/zip
13. libzip ext/zip
zip.h -- exported declarations.
Copyright (C) 1999-2009 Dieter Baron and Thomas Klausner
@@ -340,7 +315,7 @@ IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
15. main/snprintf.c
14. main/snprintf.c
Copyright (c) 2002, 2006 Todd C. Miller <Todd.Miller@courtesan.com>
Permission to use, copy, modify, and distribute this software for any
@@ -413,8 +388,8 @@ This code is based on, and used with the permission of, the
SIO stdio-replacement strx_* functions by Panos Tsirigotis
<panos@alumni.cs.colorado.edu> for xinetd.
16. main/strlcat
17. main/strlcpy
15. main/strlcat
16. main/strlcpy
Copyright (c) 1998 Todd C. Miller <Todd.Miller@courtesan.com>
All rights reserved.
+3 -3
View File
@@ -28,7 +28,7 @@ The main functions are:
PHPAPI size_t php_stream_read(php_stream * stream, char * buf, size_t count);
PHPAPI size_t php_stream_write(php_stream * stream, const char * buf, size_t
count);
PHPAPI size_t php_stream_printf(php_stream * stream TSRMLS_DC,
PHPAPI size_t php_stream_printf(php_stream * stream,
const char * fmt, ...);
PHPAPI int php_stream_eof(php_stream * stream);
PHPAPI int php_stream_getc(php_stream * stream);
@@ -47,7 +47,7 @@ Opening Streams
In most cases, you should use this API:
PHPAPI php_stream *php_stream_open_wrapper(const char *path, const char *mode,
int options, char **opened_path TSRMLS_DC);
int options, char **opened_path);
Where:
path is the file or resource to open.
@@ -80,7 +80,7 @@ PHPAPI php_stream *php_stream_fopen_tmpfile(void);
Open a FILE * with tmpfile() and convert into a stream.
PHPAPI php_stream *php_stream_fopen_temporary_file(const char *dir,
const char *pfx, char **opened_path TSRMLS_DC);
const char *pfx, char **opened_path);
Generate a temporary file name and open it.
There are some network enabled relatives in php_network.h:
+2 -2
View File
@@ -138,7 +138,7 @@ SAPI_INPUT_FILTER_FUNC(my_sapi_input_filter)
strcpy(raw_var, "RAW_");
strlcat(raw_var,var,var_len+5);
php_register_variable_ex(raw_var, &new_var, array_ptr TSRMLS_DC);
php_register_variable_ex(raw_var, &new_var, array_ptr);
php_strip_tags(*val, val_len, NULL, NULL, 0);
@@ -154,7 +154,7 @@ PHP_FUNCTION(my_get_raw)
zval **tmp;
zval *array_ptr = NULL;
if(zend_parse_parameters(2 TSRMLS_CC, "ls", &arg, &var, &var_len) == FAILURE) {
if(zend_parse_parameters(2, "ls", &arg, &var, &var_len) == FAILURE) {
return;
}
+2 -2
View File
@@ -170,8 +170,8 @@ TSRM_API void *tsrm_get_ls_cache(void);
#define TSRMG_STATIC(id, type, element) (TSRMG_BULK_STATIC(id, type)->element)
#define TSRMG_BULK_STATIC(id, type) ((type) (*((void ***) TSRMLS_CACHE))[TSRM_UNSHUFFLE_RSRC_ID(id)])
#define TSRMLS_CACHE_EXTERN() extern TSRM_TLS void *TSRMLS_CACHE
#define TSRMLS_CACHE_DEFINE() TSRM_TLS void *TSRMLS_CACHE = NULL
#define TSRMLS_CACHE_EXTERN() extern TSRM_TLS void *TSRMLS_CACHE;
#define TSRMLS_CACHE_DEFINE() TSRM_TLS void *TSRMLS_CACHE = NULL;
#if ZEND_DEBUG
#define TSRMLS_CACHE_UPDATE() TSRMLS_CACHE = tsrm_get_ls_cache()
#else
+197
View File
@@ -0,0 +1,197 @@
# =================================================================================
# http://www.gnu.org/software/autoconf-archive/ax_func_which_gethostbyname_r.html
# =================================================================================
#
# SYNOPSIS
#
# AX_FUNC_WHICH_GETHOSTBYNAME_R
#
# DESCRIPTION
#
# Determines which historical variant of the gethostbyname_r() call
# (taking three, five, or six arguments) is available on the system and
# defines one of the following macros accordingly:
#
# HAVE_FUNC_GETHOSTBYNAME_R_6
# HAVE_FUNC_GETHOSTBYNAME_R_5
# HAVE_FUNC_GETHOSTBYNAME_R_3
#
# as well as
#
# HAVE_GETHOSTBYNAME_R
#
# If used in conjunction with gethostname.c, the API demonstrated in
# test.c can be used regardless of which gethostbyname_r() is available.
# These example files can be found at
# http://www.csn.ul.ie/~caolan/publink/gethostbyname_r
#
# based on David Arnold's autoconf suggestion in the threads faq
#
# Originally named "AC_caolan_FUNC_WHICH_GETHOSTBYNAME_R". Rewritten for
# Autoconf 2.5x, and updated for 2.68 by Daniel Richard G.
#
# LICENSE
#
# Copyright (c) 2008 Caolan McNamara <caolan@skynet.ie>
# Copyright (c) 2008 Daniel Richard G. <skunk@iskunk.org>
#
# This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
# Free Software Foundation; either version 2 of the License, or (at your
# option) any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
# Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program. If not, see <http://www.gnu.org/licenses/>.
#
# As a special exception, the respective Autoconf Macro's copyright owner
# gives unlimited permission to copy, distribute and modify the configure
# scripts that are the output of Autoconf when processing the Macro. You
# need not follow the terms of the GNU General Public License when using
# or distributing such scripts, even though portions of the text of the
# Macro appear in them. The GNU General Public License (GPL) does govern
# all other use of the material that constitutes the Autoconf Macro.
#
# This special exception to the GPL applies to versions of the Autoconf
# Macro released by the Autoconf Archive. When you make and distribute a
# modified version of the Autoconf Macro, you may extend this special
# exception to the GPL to apply to your modified version as well.
#serial 7
AC_DEFUN([AX_FUNC_WHICH_GETHOSTBYNAME_R], [
AC_LANG_PUSH([C])
AC_MSG_CHECKING([how many arguments gethostbyname_r() takes])
AC_CACHE_VAL([ac_cv_func_which_gethostbyname_r], [
################################################################
ac_cv_func_which_gethostbyname_r=unknown
#
# ONE ARGUMENT (sanity check)
#
# This should fail, as there is no variant of gethostbyname_r() that takes
# a single argument. If it actually compiles, then we can assume that
# netdb.h is not declaring the function, and the compiler is thereby
# assuming an implicit prototype. In which case, we're out of luck.
#
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <netdb.h>],
[
char *name = "www.gnu.org";
(void)gethostbyname_r(name) /* ; */
])],
[ac_cv_func_which_gethostbyname_r=no])
#
# SIX ARGUMENTS
# (e.g. Linux)
#
if test "$ac_cv_func_which_gethostbyname_r" = "unknown"; then
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <netdb.h>],
[
char *name = "www.gnu.org";
struct hostent ret, *retp;
char buf@<:@1024@:>@;
int buflen = 1024;
int my_h_errno;
(void)gethostbyname_r(name, &ret, buf, buflen, &retp, &my_h_errno) /* ; */
])],
[ac_cv_func_which_gethostbyname_r=six])
fi
#
# FIVE ARGUMENTS
# (e.g. Solaris)
#
if test "$ac_cv_func_which_gethostbyname_r" = "unknown"; then
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <netdb.h>],
[
char *name = "www.gnu.org";
struct hostent ret;
char buf@<:@1024@:>@;
int buflen = 1024;
int my_h_errno;
(void)gethostbyname_r(name, &ret, buf, buflen, &my_h_errno) /* ; */
])],
[ac_cv_func_which_gethostbyname_r=five])
fi
#
# THREE ARGUMENTS
# (e.g. AIX, HP-UX, Tru64)
#
if test "$ac_cv_func_which_gethostbyname_r" = "unknown"; then
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <netdb.h>],
[
char *name = "www.gnu.org";
struct hostent ret;
struct hostent_data data;
(void)gethostbyname_r(name, &ret, &data) /* ; */
])],
[ac_cv_func_which_gethostbyname_r=three])
fi
################################################################
]) dnl end AC_CACHE_VAL
case "$ac_cv_func_which_gethostbyname_r" in
three|five|six)
AC_DEFINE([HAVE_GETHOSTBYNAME_R], [1],
[Define to 1 if you have some form of gethostbyname_r().])
;;
esac
case "$ac_cv_func_which_gethostbyname_r" in
three)
AC_MSG_RESULT([three])
AC_DEFINE([HAVE_FUNC_GETHOSTBYNAME_R_3], [1],
[Define to 1 if you have the three-argument form of gethostbyname_r().])
;;
five)
AC_MSG_RESULT([five])
AC_DEFINE([HAVE_FUNC_GETHOSTBYNAME_R_5], [1],
[Define to 1 if you have the five-argument form of gethostbyname_r().])
;;
six)
AC_MSG_RESULT([six])
AC_DEFINE([HAVE_FUNC_GETHOSTBYNAME_R_6], [1],
[Define to 1 if you have the six-argument form of gethostbyname_r().])
;;
no)
AC_MSG_RESULT([cannot find function declaration in netdb.h])
;;
unknown)
AC_MSG_RESULT([can't tell])
;;
*)
AC_MSG_ERROR([internal error])
;;
esac
AC_LANG_POP
]) dnl end AC_DEFUN
+3 -1
View File
@@ -1,3 +1,4 @@
m4_include([TSRM/m4/gethostbyname.m4])
dnl TSRM_CHECK_GCC_ARG(ARG, ACTION-IF-FOUND, ACTION-IF-NOT_FOUND)
AC_DEFUN([TSRM_CHECK_GCC_ARG],[
@@ -32,6 +33,8 @@ AC_CHECK_HEADERS(stdarg.h)
AC_CHECK_FUNCS(sigprocmask)
AX_FUNC_WHICH_GETHOSTBYNAME_R()
])
@@ -89,7 +92,6 @@ else
fi
])
AC_DEFUN([TSRM_THREADS_CHECKS],[
dnl For the thread implementations, we always use --with-*
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| PHP Version 7 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2015 The PHP Group |
| Copyright (c) 1997-2016 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-2015 The PHP Group |
| Copyright (c) 1997-2016 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-2015 The PHP Group |
| Copyright (c) 1997-2016 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 |
+2 -2
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| PHP Version 7 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2015 The PHP Group |
| Copyright (c) 1997-2016 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 |
@@ -72,7 +72,7 @@ typedef struct {
#ifdef ZTS
# define TWG(v) TSRMG_STATIC(win32_globals_id, tsrm_win32_globals *, v)
TSRMLS_CACHE_EXTERN();
TSRMLS_CACHE_EXTERN()
#else
# define TWG(v) (win32_globals.v)
#endif
+8
View File
@@ -756,6 +756,14 @@ out, that the corresponding SDK isn't available anymore.
- 'gd PS font'
- 'gd PS encoding'
- Zip
. Filename encoding flags, as of 7.0.8
- ZipArchive::FL_ENC_GUESS
- ZipArchive::FL_ENC_RAW
- ZipArchive::FL_ENC_STRICT
- ZipArchive::FL_ENC_UTF_8
- ZipArchive::FL_ENC_CP437
========================================
11. Changes to INI File Handling
========================================
@@ -0,0 +1,43 @@
--TEST--
Using indirect append on ArrayAccess object
--FILE--
<?php
class AA implements ArrayAccess {
private $data = [];
public function &offsetGet($name) {
if (null === $name) {
return $this->data[];
} else {
return $this->data[$name];
}
}
public function offsetSet($name, $value) {
$this->data[$name] = $value;
}
public function offsetUnset($name) {}
public function offsetExists($name) {}
}
$aa = new AA;
$aa[3] = 1;
$aa[][][0] = 2;
var_dump($aa);
?>
--EXPECT--
object(AA)#1 (1) {
["data":"AA":private]=>
array(2) {
[3]=>
int(1)
[4]=>
array(1) {
[0]=>
array(1) {
[0]=>
int(2)
}
}
}
}
@@ -0,0 +1,36 @@
--TEST--
Array must be separated if unpacking by reference
--FILE--
<?php
function inc(&... $args) {
foreach ($args as &$arg) {
$arg++;
}
}
$arr = [1, 2];
$arr[] = 3;
$arr2 = $arr;
inc(...$arr);
var_dump($arr);
var_dump($arr2);
?>
--EXPECT--
array(3) {
[0]=>
int(2)
[1]=>
int(3)
[2]=>
int(4)
}
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
@@ -0,0 +1,11 @@
--TEST--
Serialization of backtick literal is incorrect
--INI--
zend.assertions=1
--FILE--
<?php
assert_options(ASSERT_WARNING);
assert(false && `echo -n ""`);
--EXPECTF--
Warning: assert(): assert(false && `echo -n ""`) failed in %s%east_serialize_backtick_literal.php on line %d
+2 -1
View File
@@ -8,7 +8,8 @@ class Thing {}
function boom()
{
$reader = xml_parser_create();
xml_set_object($reader, new Thing());
$thing = new Thing();
xml_set_object($reader, $thing);
die("ok\n");
xml_parser_free($reader);
}
+1 -2
View File
@@ -10,5 +10,4 @@ class foo {
$obj = new foo("Hello world");
?>
--EXPECTF--
Fatal error: Cannot re-assign $this in %sbug41117_1.php on line 3
Fatal error: Cannot use $this as parameter in %s on line %d
+1 -1
View File
@@ -1,5 +1,5 @@
--TEST--
Bug #42802 (Namespace not supported in typehints)
Bug #42802 (Namespace not supported in types)
--FILE--
<?php
namespace foo;
+1 -1
View File
@@ -23,4 +23,4 @@ class B extends A {
}
?>
--EXPECTF--
Warning: Declaration of B::foo($var) should be compatible with A::foo() in %sbug62358.php on line %d
Fatal error: Declaration of B::foo($var) must be compatible with I::foo() in %sbug62358.php on line 17
+1 -1
View File
@@ -18,4 +18,4 @@ $test = new Foo();
var_dump($test instanceof Baz);
?>
--EXPECTF--
Fatal error: Access level to Bar::bad() must be public (as in class Baz) in %sbug69467.php on line %d
Fatal error: Access level to Foo::bad() must be public (as in class Baz) in %sbug69467.php on line %d
+19
View File
@@ -0,0 +1,19 @@
--TEST--
Bug #69537 (__debugInfo with empty string for key gives error)
--FILE--
<?php
class Foo {
public function __debugInfo(){
return ['' => 1];
}
}
var_dump(new Foo);
?>
--EXPECTF--
object(Foo)#%d (%d) {
[""]=>
int(1)
}
+1 -1
View File
@@ -5,4 +5,4 @@ Bug #69767 (Default parameter value with wrong type segfaults)
function foo(String $bar = 0) {}
?>
--EXPECTF--
Fatal error: Default value for parameters with a string type hint can only be string or NULL in %sbug69767.php on line %d
Fatal error: Default value for parameters with a string type can only be string or NULL in %sbug69767.php on line %d
-2
View File
@@ -27,8 +27,6 @@ $c10 = new C10;
var_dump($c10[] += 5);
--EXPECTF--
Inside C10::offsetGet
Notice: Undefined variable: offset in %sbug69955.php on line 10
NULL
Inside C10::offsetSet
+15
View File
@@ -0,0 +1,15 @@
--TEST--
Bug #69989: Cycle collection for yielded values
--FILE--
<?php
function gen() {
yield yield;
}
$gen = gen();
$gen->send($gen);
?>
===DONE===
--EXPECT--
===DONE===
+26
View File
@@ -0,0 +1,26 @@
--TEST--
Bug #70083 (Use after free with assign by ref to overloaded objects)
--FILE--
<?php
class foo {
private $var;
function __get($e) {
return $this;
}
}
function &noref() { $foo = 1; return $foo; }
$foo = new foo;
$foo->i = &noref();
var_dump($foo);
?>
--EXPECTF--
Fatal error: Uncaught Error: Cannot assign by reference to overloaded object in %s:%d
Stack trace:
#0 {main}
thrown in %s on line %d
+10
View File
@@ -0,0 +1,10 @@
--TEST--
Bug #71221 (Null pointer deref (segfault) in get_defined_vars via ob_start)
--FILE--
<?php
ob_start("get_defined_vars");
ob_end_clean();
?>
okey
--EXPECT--
okey
+28
View File
@@ -0,0 +1,28 @@
--TEST--
Bug #71248 (Wrong interface is enforced)
--FILE--
<?php
class Hint1 { }
class Hint2 { }
abstract class Base {
public function __construct(Hint1 $x) { }
}
interface Iface {
public function __construct(Hint1 $x);
}
class Foo extends Base implements Iface {
}
$code = <<<'PHP'
abstract class Bar extends Base {
public function __construct(Hint2 $x) { }
}
PHP;
eval($code);
?>
OK
--EXPECT--
OK
+27
View File
@@ -0,0 +1,27 @@
--TEST--
Bug #71275 (Bad method called on cloning an object having a trait)
--FILE--
<?php
trait MyTrait {
public function _() {
throw new RuntimeException('Should not be called');
}
}
class MyClass {
use MyTrait;
public function __clone() {
echo "I'm working hard to clone";
}
}
$instance = new MyClass();
clone $instance;
?>
--EXPECT--
I'm working hard to clone
+28
View File
@@ -0,0 +1,28 @@
--TEST--
Bug #71300 (Segfault in zend_fetch_string_offset)
--FILE--
<?php
function test1() {
for ($n = 'a'; $n < 'g'; $n++) {
$$n = 1;
}
$$n = $$n[++$n] = "test";
return $$n;
}
var_dump(test1());
function test2() {
/* See #71303 for why not using for loop here */
$n = "a";
$$n .= $$n[++$n] = "test";
return $$n;
}
var_dump(test2());
?>
--EXPECTF--
string(4) "test"
Notice: Array to string conversion in %sbug71300.php on line %d
string(9) "Arraytest"
+48
View File
@@ -0,0 +1,48 @@
--TEST--
Bug #71336 (Wrong is_ref on properties as exposed via get_object_vars())
--FILE--
<?php
class A
{
protected $bar = array('baz');
function bar()
{
array_pop($this->bar);
$vars = get_object_vars($this);
$this->bar[] = array('buz');
print_r($vars);
}
function foo() {
array_pop($this->bar);
$dummy = &$this->bar;
$vars = get_object_vars($this);
$this->bar[] = array('buz');
print_r($vars);
}
}
(new A())->bar();
(new A())->foo();
?>
--EXPECT--
Array
(
[bar] => Array
(
)
)
Array
(
[bar] => Array
(
[0] => Array
(
[0] => buz
)
)
)
+61
View File
@@ -0,0 +1,61 @@
--TEST--
Bug #71359: Null coalescing operator and magic
--FILE--
<?php
class AA {
private $data = [];
public function __isset($name) {
echo "__isset($name)\n";
return array_key_exists($name, $this->data);
}
public function &__get($name) {
echo "__get($name)\n";
if (!array_key_exists($name, $this->data)) {
throw new Exception('Unknown offset');
}
return $this->data[$name];
}
public function __set($name, $value) {
echo "__set($name)\n";
$this->data[$name] = $value;
}
public function __unset($name) {
echo "__unset($name)\n";
unset($this->data[$name]);
}
}
$aa = new AA;
var_dump(isset($aa->zero->one->two));
var_dump(isset($aa->zero->foo));
var_dump($aa->zero ?? 42);
var_dump($aa->zero->one->two ?? 42);
$aa->zero = new AA;
$aa->zero->one = new AA;
var_dump(isset($aa->zero->one->two));
var_dump($aa->zero->one->two ?? 42);
?>
--EXPECT--
__isset(zero)
bool(false)
__isset(zero)
bool(false)
__isset(zero)
int(42)
__isset(zero)
int(42)
__set(zero)
__get(zero)
__set(one)
__isset(zero)
__get(zero)
__isset(one)
__get(one)
__isset(two)
bool(false)
__isset(zero)
__get(zero)
__isset(one)
__get(one)
__isset(two)
int(42)
+25
View File
@@ -0,0 +1,25 @@
--TEST--
Bug #71414 (Interface method override inherited method and implemented in a trait causes fatal error)
--FILE--
<?php
interface InterfaceY {
public function z(): string;
}
trait TraitY {
public function z(): string {
}
}
class X {
public function z() {
}
}
class Y extends X implements InterfaceY {
use TraitY;
}
echo "ok";
--EXPECT--
ok
+15
View File
@@ -0,0 +1,15 @@
--TEST--
bug #71428.1: inheritance with null default values
--XFAIL--
This is a BC break
--FILE--
<?php
class A {
public function m(array $a = null) {}
}
class B extends A {
public function m(array $a = []) {}
}
--EXPECTF--
Warning: Declaration of B::m(array $a = Array) should be compatible with A::m(array $a = NULL) in %sbug71428.1.php on line 7
+23
View File
@@ -0,0 +1,23 @@
--TEST--
bug #71428.2: inheritance of ye olde dynamic interfaces
--SKIPIF--
<?php if (!extension_loaded('pdo')) die("skip PDO is not available"); ?>
--FILE--
<?php
interface StatementInterface {
public function fetch($first = null, $second, $third);
}
class Statement extends PDOStatement implements StatementInterface {}
interface StatementInterface1 {
public function fetch($first = null, $second = null, $third = null);
}
class Statement1 extends PDOStatement implements StatementInterface1 {}
echo "ok";
?>
--EXPECT--
ok
+13
View File
@@ -0,0 +1,13 @@
--TEST--
bug #71428: Validation type inheritance with = NULL
--XFAIL--
This is a BC break
--FILE--
<?php
class A { }
class B { public function m(A $a = NULL, $n) { echo "B.m";} };
class C extends B { public function m(A $a , $n) { echo "C.m";} };
?>
--EXPECTF--
Warning: Declaration of C::m(A $a, $n) should be compatible with B::m(A $a = NULL, $n) in %sbug71428.3.php on line 4
+13
View File
@@ -0,0 +1,13 @@
--TEST--
Bug #71470: Leaked 1 hashtable iterators
--FILE--
<?php
$array = [1, 2, 3];
foreach ($array as &$v) {
die("foo\n");
}
?>
--EXPECT--
foo
+23
View File
@@ -0,0 +1,23 @@
--TEST--
Bug #71474: Crash because of VM stack corruption on Magento2
--FILE--
<?php
class foo {
function __call($name, $args) {
$a = $b = $c = $d = $e = $f = 1;
}
}
function test($n, $x) {
// var_dump($n);
if ($n > 0) {
$x->bug();
test($n - 1, $x);
}
}
test(3000, new foo());
echo "OK\n";
?>
--EXPECT--
OK
+23
View File
@@ -0,0 +1,23 @@
--TEST--
Bug #71529: Variable references on array elements don't work when using count
--FILE--
<?php
$a = [1];
$a[] = &$a[out(count($a) - 1)];
var_dump($a);
function out($what) {
var_dump($what);
return $what;
}
?>
--EXPECT--
int(0)
array(2) {
[0]=>
&int(1)
[1]=>
&int(1)
}
+30
View File
@@ -0,0 +1,30 @@
--TEST--
Bug #71622 (Strings used in pass-as-reference cannot be used to invoke C::$callable())
--FILE--
<?php
function getMethodName(&$methodName) {
$methodName = Abc::METHOD_NAME;
}
class Abc {
const METHOD_NAME = "goal";
private static function goal() {
echo "success\n";
}
public static function run() {
$method = "foobar";
getMethodName($method);
var_dump(is_callable("self::$method"));
self::$method();
}
}
Abc::run();
?>
--EXPECT--
bool(true)
success
+17
View File
@@ -0,0 +1,17 @@
--TEST--
Bug #71695 (Global variables are reserved before execution)
--FILE--
<?php
function provideGlobals() {
var_dump(array_key_exists("foo", $GLOBALS));
var_dump(isset($GLOBALS["foo"]));
$GLOBALS += array("foo" => "foo");
}
provideGlobals();
echo $foo;
?>
--EXPECT--
bool(false)
bool(false)
foo
+19
View File
@@ -0,0 +1,19 @@
--TEST--
Bug #71724: yield from does not count EOLs
--FILE--
<?php
function test()
{
yield
from [__LINE__];
}
var_dump(test()->current());
?>
--EXPECT--
int(10)
+64
View File
@@ -0,0 +1,64 @@
--TEST--
Bug #71731: Null coalescing operator and ArrayAccess
--FILE--
<?php
class AA implements ArrayAccess {
private $data = [];
public function offsetExists($name) {
echo "offsetExists($name)\n";
return array_key_exists($name, $this->data);
}
public function &offsetGet($name) {
echo "offsetGet($name)\n";
if (!array_key_exists($name, $this->data)) {
throw new Exception('Unknown offset');
}
return $this->data[$name];
}
public function offsetSet($name, $value) {
echo "offsetSet($name)\n";
$this->data[$name] = $value;
}
public function offsetUnset($name) {
echo "offsetUnset($name)\n";
unset($this->data[$name]);
}
}
$aa = new AA;
var_dump(isset($aa[0][1][2]));
var_dump(isset($aa[0]->foo));
var_dump($aa[0] ?? 42);
var_dump($aa[0][1][2] ?? 42);
$aa[0] = new AA;
$aa[0][1] = new AA;
var_dump(isset($aa[0][1][2]));
var_dump($aa[0][1][2] ?? 42);
?>
--EXPECT--
offsetExists(0)
bool(false)
offsetExists(0)
bool(false)
offsetExists(0)
int(42)
offsetExists(0)
int(42)
offsetSet(0)
offsetGet(0)
offsetSet(1)
offsetExists(0)
offsetGet(0)
offsetExists(1)
offsetGet(1)
offsetExists(2)
bool(false)
offsetExists(0)
offsetGet(0)
offsetExists(1)
offsetGet(1)
offsetExists(2)
int(42)
+16
View File
@@ -0,0 +1,16 @@
--TEST--
Bug #71737: Memory leak in closure with parameter named $this
--FILE--
<?php
class Test {
public function method() {
return function($this) {};
}
}
(new Test)->method()(new stdClass);
?>
--EXPECTF--
Fatal error: Cannot use $this as parameter in %s on line %d
+27
View File
@@ -0,0 +1,27 @@
--TEST--
Bug #71756 (Call-by-reference widens scope to uninvolved functions when used in switch)
--FILE--
<?php
function a ($option) {
b($option['bla']);
c($option);
var_dump($option);
}
function b (&$string) {
$string = 'changed';
}
function c ($option) {
switch ($option['bla']) {
case 'changed':
$copy = $option;
$copy['bla'] = 'copy';
break;
}
}
a(array('bla' => 'false'));
?>
--EXPECTF--
array(1) {
["bla"]=>
string(7) "changed"
}
+23
View File
@@ -0,0 +1,23 @@
--TEST--
Bug #71841 (EG(error_zval) is not handled well)
--INI--
error_reporting=0
--FILE--
<?php
$z = unserialize('O:1:"A":0:{}');
var_dump($z->e.=0);
var_dump(++$z->x);
var_dump($z->y++);
$y = array(PHP_INT_MAX => 0);
var_dump($y[] .= 0);
var_dump(++$y[]);
var_dump($y[]++);
?>
--EXPECT--
NULL
NULL
NULL
NULL
NULL
NULL
+28
View File
@@ -0,0 +1,28 @@
--TEST--
Bug #71859 (zend_objects_store_call_destructors operates on realloced memory, crashing)
--FILE--
<?php
class constructs_in_destructor {
public function __destruct() {
//We are now in zend_objects_store_call_destructors
//This causes a realloc in zend_objects_store_put
for ($i = 0; $i < 10000; ++$i) {
$GLOBALS["a$i"] = new stdClass;
}
//Returns to zend_objects_store_call_destructors, to access freed memory.
}
}
$a = new constructs_in_destructor;
//Create cycle so destructors are ran only in zend_objects_store_call_destructors
$a->a = $a;
// Create some objects so zend_objects_store_call_destructors has something
// to do after constructs_in_destructor is destroyed.
for ($i = 0; $i < 200; ++$i) {
$GLOBALS["b$i"] = new stdClass;
}
?>
okey
--EXPECT--
okey
+12
View File
@@ -0,0 +1,12 @@
--TEST--
Bug #71871: Interfaces allow final and abstract functions
--FILE--
<?php
interface test {
final function test();
}
?>
--EXPECTF--
Fatal error: Access type for interface method test::test() must be omitted in %s on line %d
+12
View File
@@ -0,0 +1,12 @@
--TEST--
Bug #71871: Interfaces allow final and abstract functions
--FILE--
<?php
interface test {
abstract function test();
}
?>
--EXPECTF--
Fatal error: Access type for interface method test::test() must be omitted in %s on line %d
+40
View File
@@ -0,0 +1,40 @@
--TEST--
Bug #71914 (Reference is lost in "switch")
--FILE--
<?php
function bug(&$value) {
switch ($value) {
case "xxxx":
$value = true;
break;
}
}
function returnArray() {
$array = array();
$array["str"] = "xxxx";
return $array;
}
class Foo {
public $array = array("str" => "xxxx");
}
function test($arr, &$dummy) {
bug($arr["str"]);
var_dump($arr["str"]);
}
$foo = new Foo();
$arr = returnArray();
$array = array("str" => "xxxx");
test($array, $array["str"]);
test($arr, $arr["str"]);
test($foo->array, $foo->array["str"]);
?>
--EXPECT--
bool(true)
bool(true)
bool(true)
+21
View File
@@ -0,0 +1,21 @@
--TEST--
Bug #71922: Crash on assert(new class{});
--INI--
zend.assertions=1
assert.exception=1
--FILE--
<?php
try {
assert(0 && new class {
} && new class(42) extends stdclass {
});
} catch (AssertionError $e) {
echo "Assertion failure: ", $e->getMessage(), "\n";
}
?>
--EXPECT--
Assertion failure: assert(0 && new class {
} && new class(42) extends stdclass {
})
+30
View File
@@ -0,0 +1,30 @@
--TEST--
Bug #71930 (_zval_dtor_func: Assertion `(arr)->gc.refcount <= 1' failed)
--SKIPIF--
<?php
if (!extension_loaded("curl")) {
die("skip Require a resource which is able to hold a callbck");
}
?>
--FILE--
<?php
class A {
public static function dummy() {
}
}
$a = array();
$a[] = "A";
$a[] = "dummy";
$ch1 = curl_init();
curl_setopt($ch1, CURLOPT_HEADERFUNCTION, $a);
set_error_handler($a);
set_error_handler(function()use($ch1){});
set_error_handler(function(){});
?>
okey
--EXPECT--
okey
+43
View File
@@ -0,0 +1,43 @@
--TEST--
Bug #71980: Decorated/Nested Generator is Uncloseable in Finally
--FILE--
<?php
class Dtor {
public function __destruct() {
echo "Dtor\n";
}
}
function gen1() {
try {
foreach ([42, new Dtor] as $value) {
yield $value;
}
} finally {
echo "Finally\n";
}
}
function gen2() {
try {
var_dump(new Dtor, yield);
} finally {
echo "Finally\n";
}
}
$gen = gen1();
$gen->rewind();
unset($gen);
$gen = gen2();
$gen->rewind();
unset($gen);
?>
--EXPECT--
Dtor
Finally
Dtor
Finally
+27
View File
@@ -0,0 +1,27 @@
--TEST--
Bug #72038 (Function calls with values to a by-ref parameter don't always throw a notice)
--FILE--
<?php
test($foo = new stdClass);
var_dump($foo);
test($bar = 2);
var_dump($bar);
test($baz = &$bar);
var_dump($baz);
function test(&$param) {
$param = 1;
}
?>
--EXPECTF--
Notice: Only variables should be passed by reference in %s on line %d
object(stdClass)#1 (0) {
}
Notice: Only variables should be passed by reference in %s on line %d
int(2)
int(1)
+21
View File
@@ -0,0 +1,21 @@
--TEST--
Bug #72057 (PHP hangs when user error handler throws exception after Notice from type coercion)
--FILE--
<?php
set_error_handler(
function() {
throw new Exception("My custom error");
}
);
(function (int $i) { bar(); })("7as");
--EXPECTF--
Fatal error: Uncaught Exception: My custom error in %s:%d
Stack trace:
#0 %s(%d): {closure}(8, 'A non well form...', '%s', %d, Array)
#1 %s(%d): {closure}('7as')
#2 {main}
thrown in %s on line %d
+85
View File
@@ -0,0 +1,85 @@
--TEST--
Bug #72101 (crash on complex code)
--FILE--
<?php
class PHPUnit_Framework_MockObject_Stub_ReturnCallback {
protected $callback;
public function __construct($callback) {
$this->callback = $callback;
}
public function invoke($invocation) {
return call_user_func_array($this->callback, $invocation->parameters);
}
}
class PHPUnit_Framework_MockObject_InvocationMocker {
protected $matchers = [];
public function addMatcher( $matcher) {
$this->matchers[] = $matcher;
}
public function invoke( $invocation) {
foreach ($this->matchers as $match) {
$match->invoked($invocation);
}
}
}
class PHPUnit_Framework_MockObject_Matcher {
public $stub = null;
public function invoked($invocation) {
return $this->stub->invoke($invocation);
}
}
class MethodCallbackByReference {
public function bar(&$a, &$b, $c) {
Legacy::bar($a, $b, $c);
}
public function callback(&$a, &$b, $c) {
$b = 1;
}
}
class PHPUnit_Framework_MockObject_Invocation_Static {
public $parameters;
public function __construct(array $parameters) {
$this->parameters = $parameters;
}
}
class Mock_MethodCallbackByReference_7b180d26 extends MethodCallbackByReference {
public $inv_mocker;
public function bar(&$a, &$b, $c) {
$arguments = array($a, $b, $c);
$result = $this->inv_mocker->invoke(
new PHPUnit_Framework_MockObject_Invocation_Static(
$arguments
)
);
return $result;
}
}
set_error_handler(function() {
// var_dump(func_get_args());
DoesNotExists::$nope = true;
}, E_ALL | E_STRICT);
$foo = new Mock_MethodCallbackByReference_7b180d26();
$InvMocker = new PHPUnit_Framework_MockObject_InvocationMocker();
$foo->inv_mocker = $InvMocker;
$OuterMatcher = new PHPUnit_Framework_MockObject_Matcher();
$InvMocker->addMatcher($OuterMatcher);
$OuterMatcher->methodNameMatcher = null;
$OuterMatcher->stub = new PHPUnit_Framework_MockObject_Stub_ReturnCallback([$foo, 'callback']);
$a = $b = $c = 0;
$foo->bar($a, $b, $c);
--EXPECTF--
Fatal error: Uncaught Error: Class 'DoesNotExists' not found in %sbug72101.php:61
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))
#4 %sbug72101.php(72): Mock_MethodCallbackByReference_7b180d26->bar(0, 0, 0)
#5 {main}
thrown in %sbug72101.php on line 61
+18
View File
@@ -0,0 +1,18 @@
--TEST--
Bug #72119 (Interface declaration compatibility regression with default values)
--FILE--
<?php
interface Foo {
public function bar(array $baz = null);
}
class Hello implements Foo {
public function bar(array $baz = [])
{
}
}
echo "OK\n";
?>
--EXPECT--
OK
+10
View File
@@ -0,0 +1,10 @@
--TEST--
Bug #72162 (use-after-free - error_reporting)
--FILE--
<?php
error_reporting(E_ALL);
$var11 = new StdClass();
$var16 = error_reporting($var11);
?>
--EXPECTF--
Catchable fatal error: Object of class stdClass could not be converted to string in %sbug72162.php on line %d
@@ -0,0 +1,73 @@
--TEST--
call_user_func_array() passes value to prefer-ref arg if element wasn't a reference
--FILE--
<?php
namespace {
call_user_func_array('array_multisort', [[3, 2, 1]]);
$args = [[3, 2, 1]];
call_user_func_array('array_multisort', $args);
var_dump($args);
unset($args);
$array = [3, 2, 1];
call_user_func('array_multisort', $array);
var_dump($array);
unset($array);
}
namespace Foo {
call_user_func_array('array_multisort', [[3, 2, 1]]);
$args = [[3, 2, 1]];
call_user_func_array('array_multisort', $args);
var_dump($args);
unset($args);
$array = [3, 2, 1];
call_user_func('array_multisort', $array);
var_dump($array);
unset($array);
}
?>
--EXPECT--
array(1) {
[0]=>
array(3) {
[0]=>
int(3)
[1]=>
int(2)
[2]=>
int(1)
}
}
array(3) {
[0]=>
int(3)
[1]=>
int(2)
[2]=>
int(1)
}
array(1) {
[0]=>
array(3) {
[0]=>
int(3)
[1]=>
int(2)
[2]=>
int(1)
}
}
array(3) {
[0]=>
int(3)
[1]=>
int(2)
[2]=>
int(1)
}
+1 -1
View File
@@ -1,5 +1,5 @@
--TEST--
Closure 059: Closure type hinting
Closure 059: Closure type declaration
--FILE--
<?php
class A {
@@ -0,0 +1,16 @@
--TEST--
Closure::__invoke() is case insensitive
--FILE--
<?php
$inc = function(&$n) {
$n++;
};
$n = 1;
$inc->__INVOKE($n);
var_dump($n);
?>
--EXPECT--
int(2)
@@ -0,0 +1,47 @@
--TEST--
Constant expressions with null coalescing operator ??
--FILE--
<?php
const A = [1 => [[]]];
const T_1 = null ?? A[1]['undefined']['index'] ?? 1;
const T_2 = null ?? A['undefined']['index'] ?? 2;
const T_3 = null ?? A[1][0][2] ?? 3;
const T_4 = A[1][0][2] ?? 4;
const T_5 = null ?? __LINE__;
const T_6 = __LINE__ ?? "bar";
var_dump(T_1);
var_dump(T_2);
var_dump(T_3);
var_dump(T_4);
var_dump(T_5);
var_dump(T_6);
var_dump((function(){ static $var = null ?? A[1]['undefined']['index'] ?? 1; return $var; })());
var_dump((function(){ static $var = null ?? A['undefined']['index'] ?? 2; return $var; })());
var_dump((function(){ static $var = null ?? A[1][0][2] ?? 3; return $var; })());
var_dump((function(){ static $var = A[1][0][2] ?? 4; return $var; })());
var_dump((new class { public $var = null ?? A[1]['undefined']['index'] ?? 1; })->var);
var_dump((new class { public $var = null ?? A['undefined']['index'] ?? 2; })->var);
var_dump((new class { public $var = null ?? A[1][0][2] ?? 3; })->var);
var_dump((new class { public $var = A[1][0][2] ?? 4; })->var);
?>
--EXPECTF--
int(1)
int(2)
int(3)
int(4)
int(%d)
int(%d)
int(1)
int(2)
int(3)
int(4)
int(1)
int(2)
int(3)
int(4)
@@ -0,0 +1,11 @@
--TEST--
Constant expressions with empty dimension fetch on coalesce
--FILE--
<?php
const A = [][] ?? 1;
?>
--EXPECTF--
Fatal error: Cannot use [] for reading in %s.php on line %d
+4 -1
View File
@@ -35,10 +35,12 @@ const T_19 = [
false => false,
true => true,
];
eval("const T_20x = 'a';");
const T_20 = null ?: (T_20x . 'bc');
var_dump(
T_1, T_2, T_3, T_4, T_5, T_6, T_7, T_8, T_9, T_10,
T_11, T_12, T_13, T_14, T_15, T_16, T_17, T_18, T_19
T_11, T_12, T_13, T_14, T_15, T_16, T_17, T_18, T_19, T_20
);
?>
@@ -75,3 +77,4 @@ array(6) {
[1]=>
bool(true)
}
string(3) "abc"
@@ -0,0 +1,15 @@
--TEST--
Crash when using dynamic call syntax with fully qualified name in a namespace
--FILE--
<?php
namespace Foo;
try {
('\bar')();
} catch (\Error $e) {
echo $e->getMessage(), "\n";
}
?>
--EXPECT--
Call to undefined function bar()
+4 -2
View File
@@ -3,10 +3,12 @@ Testing each() with array and object
--FILE--
<?php
$foo = each(new stdClass);
$a = new stdClass;
$foo = each($a);
var_dump($foo);
var_dump(each(new stdClass));
$a = new stdClass;
var_dump(each($a));
$a = array(new stdClass);
var_dump(each($a));
+2 -2
View File
@@ -1,5 +1,5 @@
--TEST--
errmsg: default value for parameters with array type hint can only be an array or NULL
errmsg: default value for parameters with array type can only be an array or NULL
--FILE--
<?php
@@ -11,4 +11,4 @@ class test {
echo "Done\n";
?>
--EXPECTF--
Fatal error: Default value for parameters with array type hint can only be an array or NULL in %s on line %d
Fatal error: Default value for parameters with array type can only be an array or NULL in %s on line %d
+1 -1
View File
@@ -45,7 +45,7 @@ $done = 0;
$a = [0,1,2,3,4];
foreach($a as &$v) {
echo "$v\n";
if ($done && $v == 3) {
if (!$done && $v == 3) {
$done = 1;
array_splice($a, 1, 2, $replacement);
}
+25
View File
@@ -0,0 +1,25 @@
--TEST--
Bug #71297 (Memory leak with consecutive yield from)
--FILE--
<?php
function foo() {
yield array_fill(0, 10000, 4);
}
function genLeak() {
$i = 0;
while (1) {
yield from foo();
print $i++;
}
}
$x = 0;
foreach (genLeak() as $i) {
if ($x++ == 3) break;
}
?>
--EXPECT--
012
+29
View File
@@ -0,0 +1,29 @@
--TEST--
Bug #71441 (Typehinted Generator with return in try/finally crashes)
--FILE--
<?php
$num = 2000; /* to be sure to be in wild memory */
$add = str_repeat("1 +", $num);
$gen = (eval(<<<PHP
return function (): \Generator {
try {
\$a = 1;
\$foo = \$a + $add \$a;
return yield \$foo;
} finally {
print "Ok\n";
}
};
PHP
))();
var_dump($gen->current());
$gen->send("Success");
var_dump($gen->getReturn());
?>
--EXPECT--
int(2002)
Ok
string(7) "Success"
+40
View File
@@ -0,0 +1,40 @@
--TEST--
Bug #71601 (finally block not executed after yield from)
--FILE--
<?php
function gen1() {
try {
yield 1;
yield 2;
return true;
} finally {
echo "Inner finally\n";
}
}
function gen2() {
try {
echo "Entered try/catch\n";
var_dump(yield from gen1());
} finally {
echo "Finally\n";
}
}
$generator = gen2();
var_dump($generator->current());
unset($generator);
echo "Done\n";
?>
--EXPECT--
Entered try/catch
int(1)
Inner finally
Finally
Done
@@ -0,0 +1,22 @@
--TEST--
Yield from does not leave a dangling send target
--FILE--
<?php
function gen1() {
yield from [yield];
}
$gen = gen1();
$gen->send(new stdClass);
function gen2() {
$x = yield;
yield from [1, 2, 3];
}
$gen = gen2();
$gen->send(new stdClass);
$gen->send(new stdClass);
?>
===DONE===
--EXPECT--
===DONE===
+1 -1
View File
@@ -58,7 +58,7 @@ $gen->next();
var_dump($gen->getReturn());
// Explicit value-less return also results in a NULL generator
// return value and there is no interference with type hints
// return value and there is no interference with type declarations
function gen6() : Generator {
return;
yield 24;
@@ -0,0 +1,12 @@
--TEST--
Yield from by reference is not supported
--FILE--
<?php
function &gen() {
yield from [];
}
?>
--EXPECTF--
Fatal error: Cannot use "yield from" inside a by-reference generator in %s on line %d
@@ -0,0 +1,37 @@
--TEST--
Cannot "yield from" from force closed generator
--FILE--
<?php
function gen1() {
echo "gen1\n";
yield 1;
}
function gen2() {
try {
echo "try\n";
yield from gen1();
} finally {
echo "finally\n";
yield from gen1();
}
}
try {
$gen = gen2();
$gen->rewind();
unset($gen);
} catch (Error $e) {
echo $e, "\n";
}
?>
--EXPECTF--
try
gen1
finally
Error: Cannot use "yield from" in a force-closed generator in %s:%d
Stack trace:
#0 %s(%d): gen2()
#1 {main}
+1 -1
View File
@@ -12,4 +12,4 @@ class Obj
function echo(){} // not valid
--EXPECTF--
Parse error: syntax error, unexpected 'echo' (T_ECHO), expecting identifier (T_STRING) or '(' in %s on line 9
Parse error: syntax error, unexpected 'echo' (T_ECHO), expecting %s in %s on line 9
@@ -80,7 +80,6 @@ class Obj
function __FILE__(){ echo __METHOD__, PHP_EOL; }
function __DIR__(){ echo __METHOD__, PHP_EOL; }
function __NAMESPACE__(){ echo __METHOD__, PHP_EOL; }
function __halt_compiler(){ echo __METHOD__, PHP_EOL; }
}
$obj = new Obj;
@@ -160,7 +159,6 @@ $obj->__LINE__();
$obj->__FILE__();
$obj->__DIR__();
$obj->__NAMESPACE__();
$obj->__halt_compiler();
echo "\nDone\n";
@@ -240,6 +238,5 @@ Obj::__LINE__
Obj::__FILE__
Obj::__DIR__
Obj::__NAMESPACE__
Obj::__halt_compiler
Done
@@ -80,7 +80,6 @@ class Obj
static function __FILE__(){ echo __METHOD__, PHP_EOL; }
static function __DIR__(){ echo __METHOD__, PHP_EOL; }
static function __NAMESPACE__(){ echo __METHOD__, PHP_EOL; }
static function __halt_compiler(){ echo __METHOD__, PHP_EOL; }
}
Obj::empty();
@@ -158,7 +157,6 @@ Obj::__LINE__();
Obj::__FILE__();
Obj::__DIR__();
Obj::__NAMESPACE__();
Obj::__halt_compiler();
echo "\nDone\n";
@@ -238,6 +236,5 @@ Obj::__LINE__
Obj::__FILE__
Obj::__DIR__
Obj::__NAMESPACE__
Obj::__halt_compiler
Done
@@ -79,7 +79,6 @@ class Obj
const __FILE__ = '__FILE__';
const __DIR__ = '__DIR__';
const __NAMESPACE__ = '__NAMESPACE__';
const __HALT_COMPILER = '__halt_compiler';
}
echo Obj::EMPTY, PHP_EOL;
@@ -156,7 +155,6 @@ echo Obj::__LINE__, PHP_EOL;
echo Obj::__FILE__, PHP_EOL;
echo Obj::__DIR__, PHP_EOL;
echo Obj::__NAMESPACE__, PHP_EOL;
echo Obj::__HALT_COMPILER, PHP_EOL;
echo "\nDone\n";
@@ -235,6 +233,5 @@ __LINE__
__FILE__
__DIR__
__NAMESPACE__
__halt_compiler
Done
@@ -0,0 +1,18 @@
--TEST--
Leak when using an invalid parent:: reference in a constant definition
--FILE--
<?php
class A {
const B = parent::C;
}
try {
A::B;
} catch (Error $e) {
echo $e->getMessage(), "\n";
}
?>
--EXPECT--
Cannot access parent:: when current class scope has no parent
+26
View File
@@ -0,0 +1,26 @@
--TEST--
int memory_get_peak_usage ([ bool $real_usage = false ] );
--CREDITS--
marcosptf - <marcosptf@yahoo.com.br> - #phparty7 - @phpsp - novatec/2015 - sao paulo - br
--SKIPIF--
<?php
$zend_mm_enabled = getenv("USE_ZEND_ALLOC");
if ($zend_mm_enabled === "0") {
die("skip Zend MM disabled");
}
?>
--INI--
memory_limit=-1
--FILE--
<?php
var_dump($a = memory_get_peak_usage());
var_dump(memory_get_peak_usage(true));
var_dump(memory_get_peak_usage(false));
$array = range(1,1024*1024);
var_dump(memory_get_peak_usage() > $a);
?>
--EXPECTF--
int(%d)
int(%d)
int(%d)
bool(true)
+25
View File
@@ -0,0 +1,25 @@
--TEST--
Indirect modification of isref by-value return value not possible
--FILE--
<?php
class A {
public $b;
}
$arr = [];
$a = new A;
$a->b =& $arr;
(new ReflectionProperty('A', 'b'))->getValue($a)[] = 42;
var_dump($a);
?>
--EXPECT--
object(A)#1 (1) {
["b"]=>
&array(0) {
}
}
+15
View File
@@ -0,0 +1,15 @@
--TEST--
Class declaration colliding with import (in namespace)
--FILE--
<?php
namespace Foo {
class Bar {}
}
namespace Bazzle {
use Foo\Bar;
class Bar {}
}
--EXPECTF--
Fatal error: Cannot declare class Bazzle\Bar because the name is already in use in %s on line %d
+15
View File
@@ -0,0 +1,15 @@
--TEST--
Function declaration colliding with import (in namespace)
--FILE--
<?php
namespace Foo {
function bar() {}
}
namespace Bazzle {
use function Foo\bar;
function bar() {}
}
--EXPECTF--
Fatal error: Cannot declare function Bazzle\bar because the name is already in use in %s on line %d
+15
View File
@@ -0,0 +1,15 @@
--TEST--
Class declaration colliding with import (in namespace)
--FILE--
<?php
namespace Foo {
const BAR = 42;
}
namespace Bazzle {
use const Foo\BAR;
const BAR = 24;
}
--EXPECTF--
Fatal error: Cannot declare const Bazzle\BAR because the name is already in use in %s on line %d
+1 -1
View File
@@ -1,5 +1,5 @@
--TEST--
055: typehints in namespaces
055: types in namespaces
--FILE--
<?php
namespace test\ns1;
+20
View File
@@ -0,0 +1,20 @@
--TEST--
Leak in QM_ASSIGN when unwrapping references (rc=1)
--FILE--
<?php
function &ref() {
$str = "str";
$str .= "str";
return $str;
}
var_dump(true ? ref() : ref());
var_dump(ref() ?: ref());
var_dump(ref() ?? ref());
?>
--EXPECT--
string(6) "strstr"
string(6) "strstr"
string(6) "strstr"
+21
View File
@@ -0,0 +1,21 @@
--TEST--
Bug #71978 (Existence of return type hint affects other compatibility rules)
--FILE--
<?php
class A {
function foo(int $a) {}
}
class B extends A {
function foo(string $a) {}
}
class A1 {
function foo(int $a): int {}
}
class B1 extends A1 {
function foo(string $a): int {}
}
?>
--EXPECTF--
Warning: Declaration of B::foo(string $a) should be compatible with A::foo(int $a) in %s on line %d
Warning: Declaration of B1::foo(string $a): int should be compatible with A1::foo(int $a): int in %s on line %d
@@ -1,5 +1,5 @@
--TEST--
Return type hinting for internal functions
Return type for internal functions
--SKIPIF--
<?php
@@ -1,5 +1,5 @@
--TEST--
Return type hinting for internal functions 2
Return type for internal functions 2
--SKIPIF--
<?php
+1 -1
View File
@@ -1,5 +1,5 @@
--TEST--
Return type hinting and Reflection::export()
Return type and Reflection::export()
--SKIPIF--
<?php
+1 -1
View File
@@ -16,4 +16,4 @@ class C implements IFoo {
}
--EXPECTF--
Fatal error: Declaration of TFoo::oneArgument() must be compatible with IFoo::oneArgument($a) in %s on line %d
Fatal error: Declaration of C::oneArgument() must be compatible with IFoo::oneArgument($a) in %s on line %d
@@ -1,5 +1,5 @@
--TEST--
Array type hint
Array type declaration
--FILE--
<?php
function foo(array $a) {
@@ -12,8 +12,8 @@ foo(123);
--EXPECTF--
3
Fatal error: Uncaught TypeError: Argument 1 passed to foo() must be of the type array, integer given, called in %sarray_type_hint_001.php on line 7 and defined in %sarray_type_hint_001.php:2
Fatal error: Uncaught TypeError: Argument 1 passed to foo() must be of the type array, integer given, called in %s on line 7 and defined in %s:2
Stack trace:
#0 %s(%d): foo(123)
#1 {main}
thrown in %sarray_type_hint_001.php on line 2
thrown in %s on line 2
Loaded 100 of 1549 files, more files were not shown because too many files have changed in this diff. Show more