Compare commits

...
Author SHA1 Message Date
Anatol Belski a6801092ab improve fix for bug #71201 2016-01-20 00:49:05 +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
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
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
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
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
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
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
Dmitry Stogov 0402f05ba3 Fixed possible crash on Zend/tests/bug71154.phpt 2015-12-21 15:57:53 +03:00
Anatol Belski 53bfb6618d Revert "Partially fix bug #71129"
This reverts commit 4c55669caa.

The way it is fixes doesn't satisfy every SAPI, so a better solution
is yet to work out.
2015-12-21 12:09:24 +01:00
Xinchen Hui 4531d2c591 Fixed typo 2015-12-21 18:12:57 +08:00
Xinchen Hui 817513af4e Fixed bug #71178 (preg_replace with arrays creates [0] in replace array if not already set) 2015-12-21 18:10:48 +08:00
Lior Kaplan c85f569e52 Align #71165 entry format 2015-12-20 23:48:25 +02:00
Anatol Belski 4c55669caa Partially fix bug #71129 2015-12-20 15:25:11 +01:00
Xinchen Hui cfe977a406 Typo 2015-12-19 05:44:29 -08:00
Lior Kaplan 05345f5ad4 Bug #71105 was fixed in 7.0.1 (commit 9374ba35) 2015-12-19 13:21:16 +02:00
Xinchen Hui baf7ad1555 Fixed NEWS 2015-12-18 21:54:57 -08:00
Xinchen Hui a21b0942fa Fixed bug #71165 (-DGC_BENCH=1 doesn't work on PHP7) 2015-12-18 21:52:05 -08:00
Xinchen Hui 1d79011fb9 Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0 2015-12-18 21:40:48 -08:00
Xinchen Hui eb4ce3f1a8 Fixed bug #71163 (Segmentation Fault: cleanup_unfinished_calls) 2015-12-18 21:40:20 -08:00
Andrea Faulds 42c8f5e91d Fix bug #70804
This follows on from a4648ded43 and
4e01269082.
Both -(+0.0) and +(-0.0) behaved incorrectly for the same reason.
2015-12-19 02:25:44 +00:00
Andrea Faulds 8d217db369 Fix bug #66179
This also fixes ext/standard/tests/general_functions/var_export-locale.phpt
to actually run the floating-point section.
2015-12-18 19:31:21 +00:00
Xinchen Hui 8f9af36da3 Fixed bug #71144 (Sementation fault when using cURL with ZTS) 2015-12-19 00:29:19 +08:00
Xinchen Hui 916f10ac31 Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0 2015-12-19 00:20:18 +08:00
Xinchen Hui 512498d083 Fixed test skip 2015-12-19 00:19:21 +08:00
Xinchen Hui b715845650 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
2015-12-18 17:44:05 +08:00
Xinchen Hui 361b5814de Merge branch 'PHP-5.6' of git.php.net:/php-src into PHP-5.6
* 'PHP-5.6' of git.php.net:/php-src:
  Align news entry format: Implement FR -> Implemented FR
2015-12-18 17:43:25 +08:00
Xinchen Hui 2f47e9872e Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Improved fix for #71127

Conflicts:
	ext/opcache/Optimizer/pass1_5.c
2015-12-18 17:41:42 +08:00
Xinchen Hui 40702799b5 Improved fix for #71127 2015-12-18 17:37:40 +08:00
Andrea Faulds 4e01269082 Fix tests broken by 'Fix bug #52355'
a4648ded43 broke some tests
2015-12-17 23:33:24 +00:00
Andrea Faulds a4648ded43 Fix bug #52355 2015-12-17 22:39:29 +00:00
Nikita Popov a917840f38 Fixed iter leak on by-ref foreach over const/tmp array
FE_FREE does not unregister the iter for plain arrays. So always
wrap into a REF wrapper, even if not strictly necessary, in
RESET_RW. Alternatively we could use a flag to distinguish plain
positions and interators.

Also added a check for leaked iterators in shutdown_executor.
2015-12-17 23:21:48 +01:00
Nikita Popov 6a4c02e107 Fixed bug #71154 2015-12-17 22:20:29 +01:00
George Wang 0a1a4dc033 Fixed a bug in apache_request_headers() that adds an extra \0 to header name. 2015-12-17 15:20:08 -05:00
Nikita Popov a3e1952700 Fixed bug #71153 2015-12-17 20:59:57 +01:00
Dmitry Stogov 9e44b6a61e Fixed incorrect exception handling 2015-12-17 14:16:19 +03:00
Lior Kaplan 860ef0e2d7 Align NEWS entry format 2015-12-17 11:39:09 +02:00
Lior Kaplan 38e16154dd Align news entry format: Implement FR -> Implemented FR 2015-12-17 11:38:07 +02:00
Lior Kaplan c537039fcb Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Align news entry format: Implement FR -> Implemented FR
2015-12-17 11:29:47 +02:00
Lior Kaplan e61bb3fbf9 Align news entry format: Implement FR -> Implemented FR 2015-12-17 11:27:41 +02:00
Xinchen Hui 1b4e224c98 Update NEWs 2015-12-17 14:30:41 +08:00
Xinchen Hui 9374977d21 Merge branch 'PHP-5.6' into PHP-7.0
Conflicts:
	ext/opcache/Optimizer/pass1_5.c
2015-12-17 14:30:00 +08:00
Xinchen Hui 940c68b55d Fixed bug #71127 (Define in auto_prepend_file is overwrite) 2015-12-17 14:27:33 +08:00
Dmitry Stogov c7c3b967a5 Removed invalid efree() (arguments are allocated on VM stack and used without copying) 2015-12-16 15:25:49 +03:00
Lior Kaplan 96fe1dfe53 Add entry for session.lazy_write 2015-12-16 11:37:43 +02:00
Lior Kaplan ef9ddd0d82 Remove sqlite extension leftover references (was removed in PHP 5.4) 2015-12-16 09:40:02 +02:00
Yasuo Ohgaki 57be57ac94 Fix ZTS build 2015-12-16 11:10:39 +09:00
Yasuo Ohgaki 707e1c4710 Fixed test 2015-12-16 09:35:45 +09:00
Yasuo Ohgaki 714f28d8e4 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed bug #71122 Session GC may not remove obsolete session data
2015-12-16 09:34:41 +09:00
Yasuo Ohgaki e8f1c29cc9 Fixed bug #71122 Session GC may not remove obsolete session data 2015-12-16 09:15:05 +09:00
Lior Kaplan 838e4039d7 Remove extra line 2015-12-15 11:15:30 +02:00
Lior Kaplan 66d1d10917 NEWS entry for #55651 2015-12-15 11:13:54 +02:00
Avi Brender 90a26a4844 Implement FR #55651 (Option to ignore the returned FTP PASV address) 2015-12-15 11:07:40 +02:00
Yasuo Ohgaki 071616026f Update NEWS 2015-12-15 10:40:07 +09:00
Yasuo Ohgaki 8161230505 Fixed Bug #71122 Session GC may not remove obsolete session data 2015-12-15 10:27:28 +09:00
Xinchen Hui 3d3782c328 Unused vars 2015-12-14 09:23:01 -08:00
Lior Kaplan 94f3887152 NEWS entry for #55651 2015-12-15 11:52:33 +02:00
Avi Brender 71e468e141 Implement FR #55651 (Option to ignore the returned FTP PASV address) 2015-12-15 11:51:32 +02:00
Yasuo Ohgaki e048b3fc6b Update NEWS 2015-12-15 10:41:39 +09:00
Yasuo Ohgaki 1e042ae4a7 Fix merge conflict 2015-12-15 10:30:16 +09:00
Rasmus Lerdorf 56bf10f0bd Support uwsgi sapi in opcache 2015-12-14 06:10:26 -08:00
Rasmus Lerdorf 9a31d70845 Support uwsgi sapi in opcache 2015-12-14 06:09:17 -08:00
Anthony Ferrara 02e85045dc Refactor password_hash to use random_bytes internally to generate salts 2015-12-14 09:05:16 +01:00
Xinchen Hui 6a35e3b383 Added NEWS 2015-12-14 10:54:10 +08:00
Nikita Popov 7dc5bc5063 Do not swap operands in array addition
As we support constant array operands nowadays, the original check
didn't work anymore.
2015-12-14 00:29:05 +01:00
Xinchen Hui 07b33992a2 Fixed bug #71109 (ZEND_MOD_CONFLICTS("xdebug") doesn't work) 2015-12-13 05:06:08 -08:00
Xinchen Hui 4171a8f6c6 Internal function argumensts cleanup (strict_types) 2015-12-12 22:52:37 -08:00
Xinchen Hui a9026070b6 Fixed test 2015-12-12 22:37:50 -08:00
Xinchen Hui b101a6bbd4 Use format string 2015-12-12 18:45:11 -08:00
Christopher Jones e0691d27d5 Merge branch 'PHP-5.6' into PHP-7.0 2015-12-13 08:22:14 +11:00
Christopher Jones 82d58e6cbc Update README 2015-12-13 08:21:41 +11:00
Reeze Xia 95ad414658 Unused value casting should be void 2015-12-12 23:25:30 +08:00
Christopher Jones e4a48ab6b3 Prepare for a PECL release 2015-12-12 16:07:57 +11:00
Christopher Jones 915a00cd8b Merge branch 'PHP-5.6' into PHP-7.0 2015-12-12 16:06:44 +11:00
Christopher Jones 8f7e98ac4a Prepare for a PECL release 2015-12-12 16:06:08 +11:00
Xinchen Hui 1358743f9c Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0 2015-12-11 09:13:00 -08:00
Xinchen Hui 778e5f3da5 Fixed bug #71092 (Segmentation fault with return type hinting) 2015-12-11 09:11:28 -08:00
Anatol Belski 050e21beed Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
  backported 7c981192eb from 7.0
2015-12-11 17:43:36 +01:00
Anatol Belski 57eecd4e29 update NEWS 2015-12-11 17:42:01 +01:00
Anatol Belski 157d0372e0 backported 7c981192eb from 7.0
the way it doesn't hurt BC
2015-12-11 17:39:57 +01:00
Nikita Popov 04407b79df Fixed bug #71094
I didn't see any non-dummy readline tests to work off, so this
change is tested manually only.

While at it also fix other zval_dtors and use ZVAL_COPY.
2015-12-11 16:33:07 +01:00
Nikita Popov fd3ece8578 Fix bug #71086 2015-12-11 16:05:49 +01:00
Remi Collet 7a5c7e00cd NEWS 2015-12-11 13:23:21 +01:00
Remi Collet 66398757fc Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  NEWS
  Fix Bug #71089 No check to duplicate zend_extension
2015-12-11 13:22:55 +01:00
Remi Collet d403a91c6f NEWS 2015-12-11 13:22:13 +01:00
Remi Collet 410eacc1a9 Fix Bug #71089 No check to duplicate zend_extension 2015-12-11 13:21:24 +01:00
Xinchen Hui b5adfee320 Fixed bug memleak in header_register_callback 2015-12-11 17:26:31 +08:00
Nikita Popov 5c5209d676 Fix cleanup in bug70748.phpt
git add Zend/tests usable again...
2015-12-10 19:14:49 +01:00
Nikita Popov 798d168d73 Make update_opN_const implementation symmetric
So the main structure is the same...
2015-12-10 18:18:10 +01:00
Nikita Popov 37f3425263 Fix Foo::${42} and similar
Fixes segfault on direct use, segfault on opcache evaluated use,
leak on temporary use.

Fixes analogeous segfault for ${42} on opcache eval as well.
2015-12-10 18:14:40 +01:00
Lior Kaplan a19f511345 Align NEWS entry format for bug #71024 2015-12-10 15:31:06 +02:00
Xinchen Hui c096a281be The first arg is optional 2015-12-10 19:36:41 +08:00
Xinchen Hui e4ad9ed8ad Return -1 seems bug here 2015-12-10 17:35:35 +08:00
Anatol Belski e2e39f3bfc set release date 2015-12-10 08:11:23 +01:00
Xinchen Hui 29b615cfcf iFixed key leak with invalid resource 2015-12-10 15:02:01 +08:00
Xinchen Hui 7c1ddcc67f Fixed bug #71077 (ReflectionMethod for ArrayObject constructor returns wrong number of parameters) 2015-12-10 08:58:28 +08:00
Ferenc Kovacs 91adffb4d1 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  5.6.18 will be next
2015-12-10 01:31:51 +01:00
Ferenc Kovacs 7d5dbaed76 5.6.18 will be next 2015-12-10 01:30:27 +01:00
Anatol Belski 6f9819db38 fixed NEWS 2015-12-09 14:48:44 +01:00
Xinchen Hui 8ba6fea7b1 Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0 2015-12-09 21:08:57 +08:00
Xinchen Hui 4c379392b2 Fixed bug #71067 (Local object in class method stays in memory for each call) 2015-12-09 21:07:59 +08:00
Anatol Belski f444c7619e update NEWS 2015-12-09 13:39:07 +01:00
Anatol Belski 3d487fb8d1 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2015-12-09 13:38:41 +01:00
Anatol Belski e4238f4bf5 update NEWS 2015-12-09 13:37:37 +01:00
Anatol Belski 906670b817 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  ext/imap/config.m4: fix conftest segfault in utf8_to_mutf7 check, bug #66909.
  ext/dba/config.m4: Autodetect Berkeley DB v5.3.
  fix path separator in test
  Bumped SAPI version to 6.9
  Added "mod_auth_basic" to apache module list.
  Add sanitizing checks for request data.
  Clear secret after use.
  Fixed __DIR__ in CLI mode.
  Add PDO_Firebird fix in NEWS
2015-12-09 12:05:01 +01:00
Michael Orlitzky 24f21a3012 ext/imap/config.m4: fix conftest segfault in utf8_to_mutf7 check, bug #66909.
The test program for utf8_to_mutf7 attempts to call it without
arguments. The function expects one argument, however, and this leads
to a segfault as reported in PHP bug #66909.

The test program is using the PHP_IMAP_TEST_BUILD macro which
complicates things a little. To keep this diff small, the
PHP_IMAP_TEST_BUILD macro was modified to pass a fifth argument
"extra-source" to the PHP_TEST_BUILD macro. The check for
utf8_to_mutf7 was then modified to check for a dummy function,
utf8_to_mutf7_php, which passes the correct number of arguments to
utf8_to_mutf7.

PHP-Bug: https://bugs.php.net/bug.php?id=66909
Gentoo-Bug: https://bugs.gentoo.org/show_bug.cgi?id=376735
2015-12-09 12:04:16 +01:00
Anatol Belski 843341954e update NEWS 2015-12-09 11:57:03 +01:00
Michael Orlitzky 05f00e5060 ext/dba/config.m4: Autodetect Berkeley DB v5.3.
When the user passes --with-db4=DIR to ./configure, the directory DIR
is searched for a number of paths in order of preference. These paths
contain possible locations for Berkeley DB (BDB) to be installed, and
since PHP only supports BDB-4.x and BDB-5.x, it's important that (for
example) version 5.1 be autodetected before falling back to
/usr/include/db.h which can point to BDB-6.x.

The newer BDB-5.3 works with PHP, and if only BDB-5.3 is installed on
the user's system, the current ./configure script is fine. However, if
both BDB-5.3 and BDB-6.0 are installed, version 5.3 is not
autodetected, causing BDB-6.0 to be used. The ./configure step then fails.

This commit adds autodetection for BDB-5.3, and fixes a bug reported
on Gentoo at https://bugs.gentoo.org/show_bug.cgi?id=564824.
2015-12-09 11:37:50 +01:00
George Wang 6d933b463e Bumped SAPI version to 6.9 2015-12-09 11:37:46 +01:00
George Wang b3458eddfd Added "mod_auth_basic" to apache module list. 2015-12-09 11:37:45 +01:00
George Wang 5a319a02d8 Add sanitizing checks for request data. 2015-12-09 11:37:43 +01:00
George Wang af1ac753fe Clear secret after use. 2015-12-09 11:37:42 +01:00
George Wang 42789e2b8a Fixed __DIR__ in CLI mode. 2015-12-09 11:37:40 +01:00
Dmitry Stogov 4b16082e94 More verbose error messages 2015-12-09 13:34:45 +03:00
Michael Orlitzky 38b68fc042 ext/dba/config.m4: Autodetect Berkeley DB v5.3.
When the user passes --with-db4=DIR to ./configure, the directory DIR
is searched for a number of paths in order of preference. These paths
contain possible locations for Berkeley DB (BDB) to be installed, and
since PHP only supports BDB-4.x and BDB-5.x, it's important that (for
example) version 5.1 be autodetected before falling back to
/usr/include/db.h which can point to BDB-6.x.

The newer BDB-5.3 works with PHP, and if only BDB-5.3 is installed on
the user's system, the current ./configure script is fine. However, if
both BDB-5.3 and BDB-6.0 are installed, version 5.3 is not
autodetected, causing BDB-6.0 to be used. The ./configure step then fails.

This commit adds autodetection for BDB-5.3, and fixes a bug reported
on Gentoo at https://bugs.gentoo.org/show_bug.cgi?id=564824.
2015-12-09 11:20:36 +01:00
Anatol Belski 56e7903131 fix path separator in test 2015-12-09 11:18:25 +01:00
Francois Laupretre 25abf2f028 Fix bug #70781 (Extension tests fail on dynamic ext dependency) 2015-12-09 11:05:34 +01:00
George Wang 00ed55005a Bumped SAPI version to 6.9 2015-12-09 00:28:08 -05:00
George Wang 0d84097d44 Added "mod_auth_basic" to apache module list. 2015-12-09 00:27:55 -05:00
George Wang 08080c18f5 Add sanitizing checks for request data. 2015-12-09 00:26:41 -05:00
George Wang c60d4b9770 Clear secret after use. 2015-12-09 00:26:24 -05:00
George Wang 84fd8ffa2a Fixed __DIR__ in CLI mode. 2015-12-09 00:25:48 -05:00
Xinchen Hui f248309b74 Revert "Fixed bug #71053 (Type Hint about DateTime::diff does not match with informed)"
THis is bc break, which will break $date1->diff($date2 , 1), which is
common used

please do not do bc break without a asking

This reverts commit 943b23dcf6.
2015-12-09 12:00:23 +08:00
Reeze Xia 943b23dcf6 Fixed bug #71053 (Type Hint about DateTime::diff does not match with informed) 2015-12-09 11:40:47 +08:00
Xinchen Hui 0adbf6de77 Remove useless check 2015-12-09 11:37:40 +08:00
Xinchen Hui 84b997020e Fixed bug #71066 (mb_send_mail: Program terminated with signal SIGSEGV, Segmentation fault) 2015-12-08 17:47:16 -08:00
Anatol Belski adb9522767 move the entry into the correct NEWS block 2015-12-08 18:20:55 +01:00
Reeze Xia 10800b8ca2 Update NEWS 2015-12-09 00:41:18 +08:00
Xinchen Hui c47b49c9b5 Fixed test if PATH is not set 2015-12-08 08:26:04 -08:00
Reeze Xia 3427c122bf Fixed bug #71063 (filter_input(INPUT_ENV, ..) does not work) 2015-12-09 00:04:12 +08:00
Anatol Belski e26b605c21 prepare 7.0.1RC1 2015-12-08 15:54:44 +01:00
Bob Weinand a11805a4d9 PHP_MD5_CTX is now always used due to fix for #71204 2015-12-08 15:23:14 +01:00
Scott c0ce2281bc Update random.c
Supersedes #1589
2015-12-08 13:16:48 +01:00
Anthony Ferrara 908f67b1d4 Expose php_random_bytes as a first-class API within internals
This also defines two macros: php_random_bytes_throw and php_random_bytes_silent depending on use case which will throw exceptions or not respectively
2015-12-08 13:12:45 +01: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
Xinchen Hui 0495bf5650 Revert "fix typos "paramer" -> "parameters""
ABI BC break

This reverts commit 6ac12f1337.
2015-12-08 10:52:50 +08:00
Anatol Belski 920c088082 update NEWS 2015-12-07 22:54:44 +01:00
Anatol Belski 7c981192eb Fixed bug #71024 Unable to use PHP 7.0 x64 side-by-side with PHP 5.6 x32 on the same server 2015-12-07 22:53:35 +01:00
Xinchen Hui 250430acdc Fixed Bug #71049 (SQLite3Stmt::execute() releases bound parameter instead of internal buffer) 2015-12-07 07:43:09 -08:00
Márcio Almada 6ac12f1337 fix typos "paramer" -> "parameters" 2015-12-07 14:48:26 +08:00
Xinchen Hui e48988311d Fixed bug #71020 (Use after free in Collator::sortWithSortKeys) 2015-12-07 10:58:26 +08:00
Stanislav Malyshev 2e157c5275 typofix 2015-12-06 14:07:39 -08:00
Joe Watkins 03a43d50e1 standard tsrm usage for seven 2015-12-06 14:06:07 +01:00
Anatol Belski 713ad54fec update NEWS with fixed bug #70831 2015-12-06 12:41:51 +01:00
Daniel Axtens 2ea924fffc Fix #70831: Compile fails on system with 160 CPUs
This fixes the following build issue on 160-CPU POWER8 machines

ext/tokenizer/tokenizer_data.c:28:34: fatal error: zend_language_parser.h: No such file or directory
 #include <zend_language_parser.h>

It is fixed by introducing an explicit dependency on the header file.

Signed-off-by: Daniel Axtens <dja@axtens.net>
2015-12-06 12:37:08 +01:00
Bob Weinand aa8cac578e Fix double free in formatted_print.c 2015-12-06 02:54:28 +01:00
Bob Weinand 559ede17e1 Fixed bug #71013 (Incorrect exception handler with yield from) 2015-12-06 02:45:19 +01:00
Nikita Popov 1d5744027e Disable PEAR in Travis build 2015-12-05 22:48:29 +01:00
Xinchen Hui 311eb2b11e Missed one place 2015-12-04 06:51:16 -08:00
Xinchen Hui 7ac24aa661 Fixed bug #71028 (Undefined index with ArrayIterator) 2015-12-04 06:45:26 -08:00
Xinchen Hui 3ae3341533 Fixed bug #71018 (ReflectionProperty::setValue() behavior changed) 2015-12-04 11:52:08 +08:00
Lior Kaplan 5b9267c4c0 Align NEWS entries format 2015-12-03 17:53:48 +02:00
Popa Adrian Marius a154410597 Add PDO_Firebird fix in NEWS 2015-12-03 17:28:51 +02:00
Popa Adrian Marius a90ce6de31 Add PDO_Firebird fix in NEWS 2015-12-03 17:23:56 +02:00
Popa Adrian Marius 9ddfd49063 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Use LL_MASK for SQL_INT64 data formatting
2015-12-03 17:13:45 +02:00
Popa Adrian Marius 8da5752311 Use LL_MASK for SQL_INT64 data formatting 2015-12-03 17:12:02 +02:00
Popa Adrian Marius 337fd3ad64 Merge branch 'PHP-7.0' of https://git.php.net/push/php-src into PHP-7.0
* 'PHP-7.0' of https://git.php.net/push/php-src:
  NEWS for 8907da99b8
  Fixed bug #71006 (symbol referencing errors on Sparc/Solaris)
  remove PHP 5 NEWS entries
2015-12-03 16:24:24 +02:00
Popa Adrian Marius 1745ead668 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix Bug #60052	Integer returned as a 64bit integer on X64_86 for pdo_firebird
2015-12-03 16:15:18 +02:00
Popa Adrian Marius 4173a667fa Fix Bug #60052 Integer returned as a 64bit integer on X64_86 for pdo_firebird 2015-12-03 16:14:17 +02:00
Andrea Faulds 3d6dd2a27b NEWS for 8907da99b8 2015-12-03 12:16:15 +00:00
Dmitry Stogov 59424bb7bd Fixed bug #71006 (symbol referencing errors on Sparc/Solaris) 2015-12-03 13:28:41 +03:00
Anatol Belski 2fabcbfedb remove PHP 5 NEWS entries 2015-12-03 10:55:58 +01:00
Lior Kaplan e322fb0015 SIZEOF_SIZE_T doesn't exist on AIX, keep using SIZEOF_LONG
Follow up for 3689b444
2015-12-02 19:30:05 +02:00
Anatol Belski 2f62ad16a4 remove older UPGRADING entry, bug #38409 is already fixed in 5.6 2015-12-01 11:32:52 +01:00
Adam Harvey 91bad929aa Fix bug #71005 (Segfault in php_cli_server_dispatch_router()).
We didn't initialise the retval variable in
php_cli_server_dispatch_router(); let's now initialise it to be
IS_UNDEF, as the following if condition expects.
2015-12-01 03:09:36 +00:00
Xinchen Hui ed4b887cf6 Fixed bug #70991 (zend_file_cache.c:710: error: array type has incomplete element type) 2015-12-01 10:35:32 +08:00
Scott 00e3b7614e Update random.c
Ref: https://github.com/jedisct1/libsodium/commit/beb826f6fd173cff4473c8b7614033dbd4803500
2015-12-01 10:33:33 +08:00
Anatol Belski 1b27754888 arrange NEWS for final and fix one NEWS mistake 2015-12-01 02:03:49 +01:00
Dmitry Stogov 25c5d185fc Fixed bug #70997 (When using parentClass:: instead of parent::, static context changed) 2015-11-30 16:52:57 +03:00
Xinchen Hui 5df6f9f20e Fixed bug #70993 (Array key references break argument processing) 2015-11-30 10:50:23 +08:00
Jakub Zelenka e6e77d9e27 Fix typo in php_stream_from_res_no_verify
This macro is not used but it's wrong as zend_fetch_resource
accepts only 3 args and just one res index. So obviously
we need to use zend_fetch_resource2 here.
2015-11-29 19:28:25 +00:00
Xinchen Hui 4424cbf757 Order the NEWS 2015-11-28 23:48:12 -08:00
Xinchen Hui 1f65006fce Fixed bug #70931 (Two errors messages are in conflict) 2015-11-28 23:43:41 -08:00
Xinchen Hui 9397f52724 Fixed Bug #70967 (Weird error handling for __toString when Error is thrown) 2015-11-28 23:38:19 -08:00
Xinchen Hui 5af61aa1cc Space 2015-11-27 19:12:26 -08:00
Xinchen Hui 58fbe7a838 Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0 2015-11-27 07:32:21 -08:00
Xinchen Hui e9a8d7ff1d Fixed bug #70977, #70973 (Segmentation fault with opcache.huge_code_pages=1) 2015-11-27 07:30:37 -08:00
Andrea Faulds 8907da99b8 Set called_scope in Closure::call (fixes bug #70987) 2015-11-27 15:06:13 +00:00
Xinchen Hui a347b0be48 Fixed bug #70949 (SQL Result Sets With NULL Can Cause Fatal Memory Errors) 2015-11-27 15:52:55 +08:00
Xinchen Hui b0f472b3b2 Fixed test 2015-11-27 11:42:30 +08:00
Xinchen Hui 6cb6c04499 Fixed bug #70982 (setStaticPropertyValue behaviors inconsistently with 5.6) 2015-11-27 11:32:38 +08:00
Nikita Popov 99dd7ee80b Forbid namespace\int type hint as well 2015-11-26 16:56:08 +01:00
Xinchen Hui 0e91e5fb90 Fixed test 2015-11-26 12:00:25 +08:00
Bob Weinand 2de8915dea Fixed bug causing exception not being thrown immediately into a generator yielding from an array 2015-11-25 23:09:44 +01:00
Christopher Jones 071247713f Change line endings: Windows to Unix 2015-11-26 06:51:46 +11:00
Xinchen Hui f96175750a Fixed NEWs again (not sure why this is messd up twice today) 2015-11-25 08:04:36 -08:00
Xinchen Hui 4a7e83f54a Fixed bug #70970 (Segfault when combining error handler with output buffering)
of course we can try to refactor the current flow to make this error can
be catched safly.

but as 7.0.0 is releasing,  I don't think a refactor is safe now. and
actually I don't see any gain to make this catchable.

so let's keep this be consistent with 5.6 and safe for now
2015-11-25 08:00:20 -08:00
Xinchen Hui 0394c04144 Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0 2015-11-25 06:34:40 -08:00
Xinchen Hui 9376e8213c ZEND_SPACESHIP supports 2015-11-25 20:20:05 +08:00
Xinchen Hui 1b6873b4e6 Fixed NEWS 2015-11-25 19:15:33 +08:00
Xinchen Hui d6f39a1011 Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0 2015-11-25 19:12:40 +08:00
Xinchen Hui 3cdbe347ae Always lower name 2015-11-25 19:11:22 +08:00
Xinchen Hui 05738eb71a Revert "Improved fix for Fully qualified (leading backslash) type names must fail"
This reverts commit 00865ae22f.
2015-11-25 19:06:42 +08:00
Bob Weinand 73a92964ff Fixed bug #70965 (yield from with a common iterator primes too much) 2015-11-25 09:54:24 +01:00
Anatol Belski 2bae178b35 fix NEWS 2015-11-25 05:03:15 +01:00
Xinchen Hui 0134de7cff Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0 2015-11-25 11:46:14 +08:00
Xinchen Hui 00865ae22f Improved fix for Fully qualified (leading backslash) type names must fail
it now all fails with COMPILE_ERROR instead of syntax error for T_ARRAY
but COMPILE_ERROR for int
2015-11-25 11:27:32 +08:00
Anatol Belski 541631253a rearrange NEWS for RC8 2015-11-25 03:39:28 +01:00
Christopher Jones 7be30eb78c Improve test portability 2015-11-25 12:43:05 +11:00
Christopher Jones d10ee1eef1 Fix remaining gcov valgrind issues 2015-11-25 12:42:27 +11:00
Bob Weinand 80d9dcafe0 Fixed bug #70904 (yield from incorrectly marks valid generator as finished) 2015-11-24 23:43:34 +01:00
Bob Weinand 569763cb1a Fix scalar type names with leading backslash 2015-11-24 21:39:06 +01:00
Xinchen Hui d978e92d3d Update NEWS 2015-11-24 13:45:56 +08:00
Xinchen Hui e637ead6ed Merge branch 'PHP-5.6' into PHP-7.0 2015-11-24 13:45:32 +08:00
Xinchen Hui e6b46dc2ff Fixed bug #70960 (ReflectionFunction for array_unique returns wrong number of parameters) 2015-11-24 13:45:16 +08:00
Xinchen Hui fd545f4f44 Also fixed 'r' 2015-11-24 11:48:03 +08:00
Xinchen Hui 3e0b2ba5d8 Indent (not sure why it was messed) 2015-11-24 11:08:30 +08:00
Xinchen Hui 31b4581c45 Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0 2015-11-24 11:05:56 +08:00
Xinchen Hui 91fb1edbbf Fixed bug #70963 (Unserialize shows UNKNOW in result)
Thanks to ryat for reportinig
2015-11-24 11:04:42 +08:00
Côme Bernigaud e6759644ec Revert "Added back support for undocummented host:port syntax"
This reverts commit 15876e85e5.
2015-11-24 03:45:21 +01:00
Côme Bernigaud 5a8bcf73ba Revert "Using default port in ldap_connect when NULL is passed (this was the behavior prior to 5.6.11)"
This reverts commit 391087ed28.
2015-11-24 03:45:17 +01:00
Lior Kaplan a8bd182ccd Align NEWS entries format 2015-11-23 19:00:42 +02:00
Lior Kaplan 818bffc534 Add NEWS entry for #61751 2015-11-23 18:58:03 +02:00
Lior Kaplan 9642710a09 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed bug #61751 (SAPI build problem on AIX: Undefined symbol: php_register_internal_extensions)

 Conflicts:
	sapi/cgi/config9.m4
	sapi/fpm/config.m4
2015-11-23 18:56:13 +02:00
Lior Kaplan 1c72e5b299 Align NEWS entries format 2015-11-23 18:46:19 +02:00
Bob Weinand c1189eccae Output stderr on real stderr in phpdbg 2015-11-23 17:46:07 +01:00
Lior Kaplan 532912d8ab Add NEWS entry for #61751 2015-11-23 18:42:21 +02:00
Lior Kaplan d6b78a3511 Fixed bug #61751 (SAPI build problem on AIX: Undefined symbol: php_register_internal_extensions) 2015-11-23 18:40:47 +02:00
Xinchen Hui 7e9f416218 Fixed bug #70959 (ArrayObject unserialize does not restore protected fields) 2015-11-23 23:15:33 +08:00
Xinchen Hui f8bf1f33a5 Fixed bug #70959 (ArrayObject unserialize does not restore protected fields) 2015-11-23 07:08:47 -08:00
Xinchen Hui 801e46d8c0 Add test for bug (count on symbol table)
I should have do this ....
2015-11-23 06:21:30 -08:00
Xinchen Hui 6313e16a04 Improved fix for bug (count on symbol table) 2015-11-23 06:12:03 -08:00
Xinchen Hui 8c51578c81 Merge branch 'PHP-5.6' into PHP-7.0 2015-11-23 18:48:51 +08:00
Xinchen Hui b9845e5006 Add bug #70957 and #70958 releated test in refection 2015-11-23 18:48:21 +08:00
Xinchen Hui 45c5e27183 Fixed test 2015-11-23 18:33:14 +08:00
Xinchen Hui 51ccc88b87 Port fix to 7.0 2015-11-23 18:31:56 +08:00
Xinchen Hui 397be4ff54 Merge branch 'PHP-5.6' into PHP-7.0
Conflicts:
	Zend/zend_compile.c
2015-11-23 18:30:41 +08:00
Xinchen Hui a2b85ddecf Fixed bug #70958 (Invalid opcode while using ::class as trait method paramater default value) 2015-11-23 18:29:59 +08:00
Xinchen Hui 1b16c2f41c Merge branch 'PHP-5.6' into PHP-7.0
Conflicts:
	Zend/zend_compile.c
2015-11-23 12:22:17 +08:00
Xinchen Hui ab17840d33 Fixed bug #70957 (self::class can not be resolved with reflection for abstract class) 2015-11-23 12:20:44 +08:00
Xinchen Hui eada2aa91a Fixed bug (count on symbol tables) 2015-11-21 20:58:29 -08:00
Xinchen Hui 31d93fcf4b Port the fix of 5.6 to 7.0 2015-11-21 05:41:53 -08:00
Xinchen Hui c6961cb41b Merge branch 'PHP-5.6' into PHP-7.0
Conflicts:
	Zend/tests/bug70944.phpt
	Zend/zend_exceptions.c
2015-11-21 05:03:20 -08:00
Xinchen Hui 205e0ba81d Update test script 2015-11-21 05:01:51 -08:00
Xinchen Hui cbc71995a8 Unused var 2015-11-21 04:54:48 -08:00
Xinchen Hui 7b195c9875 Improved fix for bug #70944 2015-11-21 00:27:56 -08:00
Xinchen Hui 4674f18a4b Improved previously fix a little 2015-11-20 06:54:57 -08:00
Xinchen Hui 519f9bc675 Fixed bug #70947 (INI parser segfault with INI_SCANNER_TYPED) 2015-11-20 06:37:38 -08:00
Xinchen Hui 2a9fc35e51 Update NEWS 2015-11-20 16:38:24 +08:00
Xinchen Hui a2e4e64682 Merge branch 'PHP-5.6' into PHP-7.0
Conflicts:
	Zend/zend_exceptions.c
2015-11-20 16:38:00 +08:00
Xinchen Hui a1c887964e Fixed bug #70944 (try{ } finally{} can create infinite chains of exceptions) 2015-11-20 16:24:53 +08:00
Xinchen Hui 64a90a6b98 Merge branch 'PHP-5.6' into PHP-7.0 2015-11-20 15:36:26 +08:00
Xinchen Hui b42eb16cf4 This seems better 2015-11-20 15:36:13 +08:00
Xinchen Hui 7e68d6e735 Merge branch 'PHP-5.6' into PHP-7.0 2015-11-20 15:22:45 +08:00
Xinchen Hui c8d6673b59 Fixed build error "undefined symbol gdJpegGetVersionString" 2015-11-20 15:22:05 +08:00
Christopher Jones f66e25a82b Fixed LOB implementation size_t/zend_long mismatch reported by gcov 2015-11-20 09:14:05 +11:00
Christopher Jones 8b32fe80ae Stablize test on Windows 2015-11-20 09:13:47 +11:00
Remi Collet 77e9f2d6b1 typo 2015-11-19 09:20:13 +01:00
Remi Collet 1bd22e8e65 NEWS 2015-11-19 08:19:04 +01:00
Remi Collet 6680c2b22e Fixed bug #70940 Segfault in soep / type_to_string 2015-11-19 08:18:13 +01:00
Bob Weinand 4dee0c4a14 Fixed bug #70899 (buildconf failure in extensions) 2015-11-17 21:07:29 +01:00
Xinchen Hui 4f0a05ab3e Merge branch 'PHP-5.6' into PHP-7.0 2015-11-17 20:14:11 +08:00
Xinchen Hui 66c1f966f0 Merge branch 'PHP-5.6' of git.php.net:/php-src into PHP-5.6 2015-11-17 20:13:22 +08:00
Xinchen Hui fba3985f23 Improve the test 2015-11-17 20:12:50 +08:00
Andrey Hristov 96406f0842 Merge branch 'PHP-5.6' into PHP-7.0 2015-11-16 12:39:04 +01:00
Andrey Hristov 822400ef3b News for fixed bug #68344 2015-11-16 12:38:25 +01:00
Xinchen Hui 9134f9e98f Merge branch 'PHP-5.6' into PHP-7.0
Conflicts:
	ext/mysql/php_mysql.c
2015-11-16 17:59:46 +08:00
Xinchen Hui 25439e939e Merge branch 'PHP-5.6' of git.php.net:/php-src into PHP-5.6 2015-11-16 17:00:16 +08:00
Xinchen Hui be6fd4ba89 Fixed bug #68077 (LOAD DATA LOCAL INFILE / open_basedir restriction)
Actually, this only be fixed if php uses mysqlnd
2015-11-16 16:59:55 +08:00
Côme Bernigaud 15876e85e5 Added back support for undocummented host:port syntax 2015-11-16 04:50:12 +01:00
Christopher Jones 0dce4bef79 Fixed LOB mem leak reported on gcov. Also fixed unsigend comparison compile warning; and remove direct field access 2015-11-16 08:15:22 +11:00
Jakub Zelenka 3c32019989 Merge branch 'PHP-5.6' into PHP-7.0 2015-11-15 19:13:49 +00:00
Jakub Zelenka e5abc53701 Use the same CS for all json tests 2015-11-15 19:06:09 +00:00
Anatol Belski 7819fef345 Fixed bug #70917 install-pear-nozlib.phar missing
The actual bug is caused by some network error while packaged. An
error check added to interrupt the packaging process if phar package
download failed.
2015-11-15 19:01:22 +01:00
Reeze Xia c856b6e0ff Update mime type generator script to keep track of additional mime-types 2015-11-15 20:25:47 +08:00
Thorsten Rinne 04c3fbac37 Added support for CSS/JavaScript source maps
Source maps (http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/) are basically a way to map a combined/minified file back to an unbuilt state. To avoid error messages in Browser DevTools, source map files should be served with the MIME type "application/json"
2015-11-15 20:25:39 +08:00
Anatol Belski 1934d6d9ab fix test title
c/p mistake :)
2015-11-15 00:03:40 +01:00
Anatol Belski e3d19e81a2 update NEWS 2015-11-14 23:48:40 +01:00
Taoguang Chen 617698dfe0 Fixed bug #70914 zend_throw_or_error() format string vulnerability 2015-11-14 23:44:59 +01:00
Xinchen Hui c2773ea02f Update NEWs 2015-11-14 01:14:36 -08:00
Xinchen Hui fce44a5a13 Fixed bug #70910 (extract() breaks variable references) 2015-11-13 19:39:59 -08:00
Xinchen Hui 25de928df7 Fixed bug #70912 (Null ptr dereference instantiating class with invalid array property) 2015-11-13 21:24:42 +08:00
Yasuo Ohgaki a03786f773 Use distinguishable error messages. 2015-11-13 21:25:10 +09:00
Xinchen Hui 310fc87c2d SKIP on slow debug version PHP 2015-11-13 14:00:01 +08:00
Dmitry Stogov 04526093e4 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed bug #70900 (SoapClient systematic out of memory error)
2015-11-12 20:36:39 +03:00
Dmitry Stogov f8bf9bd86b Fixed bug #70900 (SoapClient systematic out of memory error) 2015-11-12 20:31:52 +03:00
Anatol Belski cc10da474d fixed typo 2015-11-12 13:37:45 +01:00
Anatol Belski 9c4fd36783 add test for bug #70898 2015-11-12 09:28:10 +01:00
Xinchen Hui c2de445f79 Also protects this one 2015-11-12 14:51:19 +08:00
Xinchen Hui 2b494ecc9c Update NEWS 2015-11-12 14:38:44 +08:00
Xinchen Hui 53c03115cf Re-fixed #70895 2015-11-12 14:35:34 +08:00
Xinchen Hui 2bed2152e6 Revert "Fixed bug Bug #70895 null ptr deref and segfault"
This reverts commit 8eef11d317.
2015-11-12 14:34:00 +08:00
Xinchen Hui c245fd7d91 Revert "refix bug #70895"
This reverts commit 93240102e0.
2015-11-12 14:33:14 +08:00
Xinchen Hui 75f85288f4 Revert "Fixed bug #70898 (SIGBUS/GPF zend_mm_alloc_small (zend_alloc.c:1291))"
This reverts commit e4e54f33ce.
2015-11-12 14:32:35 +08:00
Xinchen Hui fc611a134b Merge branch 'PHP-5.6' into PHP-7.0 2015-11-12 14:20:03 +08:00
Xinchen Hui e4e54f33ce Fixed bug #70898 (SIGBUS/GPF zend_mm_alloc_small (zend_alloc.c:1291))
Include tail \0
2015-11-12 14:18:02 +08:00
Côme Bernigaud 391087ed28 Using default port in ldap_connect when NULL is passed (this was the behavior prior to 5.6.11)
Note that passing 0 will also result in default port.
2015-11-12 07:06:05 +01:00
Anatol Belski a1e8b74827 update NEWS 2015-11-12 01:41:59 +01:00
Anatol Belski 93240102e0 refix bug #70895
move this code to where it belongs, no behavior change to actual
throwing function, thus retaining compat with old ZPP
2015-11-12 01:39:02 +01:00
Anatol Belski 8eef11d317 Fixed bug Bug #70895 null ptr deref and segfault 2015-11-12 00:52:36 +01:00
Anatol Belski a2e59e72bc fix format macro names in UPGRADING.INTERNALS 2015-11-11 16:33:34 +01:00
Ferenc Kovacs 2777d0a1d9 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Ensure the test fails
2015-11-11 14:59:31 +01:00
Xinchen Hui f72c7edfa4 Ensure the test fails 2015-11-11 14:55:33 +01:00
Xinchen Hui 88fb6d90c4 Ensure the test fails 2015-11-11 19:51:33 +08:00
Anatol Belski 3517f85e47 update NEWS, patch for #70249 pulled into RC7 2015-11-11 12:20:18 +01:00
Anatol Belski b89f451694 adjust test expectation 2015-11-11 09:47:29 +01:00
Anatol Belski 3cdc438e53 fix test filename and title 2015-11-11 09:47:24 +01:00
Ferenc Kovacs 1f39665083 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  propare for 5.6.16RC1
2015-11-11 09:21:32 +01:00
Ferenc Kovacs b22636c838 propare for 5.6.16RC1 2015-11-11 09:20:16 +01:00
Xinchen Hui 82f503f587 Re-Fixed bug #70249 (Segmentation fault while running PHPUnit tests on phpBB 3.2-dev)
Let's fixed this in the root instead
2015-11-11 12:32:46 +08:00
Xinchen Hui c3260b66c9 Revert "Fixed bug #70249 (Segmentation fault while running PHPUnit tests on phpBB 3.2-dev)"
This reverts commit d6c527830e.
2015-11-11 12:06:38 +08:00
Xinchen Hui d6c527830e Fixed bug #70249 (Segmentation fault while running PHPUnit tests on phpBB 3.2-dev)
Maybe we should introduce a new zend_hash_safe_apply which always reload
the ht->arData to make sure won't segfault the ht is grew?
2015-11-11 11:34:11 +08:00
Bob Weinand ccf8b54b89 Use --vex-iropt-precise-memory-exns=yes for valgrind < 3.8.0 2015-11-10 09:27:49 +01:00
Matteo Beccati 3cb3979de3 Split shmop/tests/002.phpt in two (all + non-root)
One of the conditions tested was expected to fail with "Permission denied",
but it doesn't when running as root. The memory segment was also leaked, hence
the split.
2015-11-10 09:10:10 +01:00
Matteo Beccati 6fa9b76342 Fix bug #70886 in shmop/tests/002.phpt 2015-11-10 09:10:10 +01:00
Xinchen Hui 4803914ae6 Unused var 2015-11-10 15:54:32 +08:00
Dmitry Stogov d66d1b97aa Fixed incorrect order of free/finally on exception 2015-11-10 10:10:39 +03:00
Anatol Belski 795af791b0 Merge branch 'PHP-7.0' of git.php.net:php-src into PHP-7.0 2015-11-10 00:41:40 +01:00
Andrea Faulds 37b64de20f Merge branch 'use_ZEND_STRL_for_builtin_types' into PHP-7.0 2015-11-09 23:40:49 +00:00
Anatol Belski a3f1154b3d additional catch to bug #70863 2015-11-10 00:38:11 +01:00
Anatol Belski 2e38918ba4 add test for eb32da13 2015-11-09 22:45:22 +01:00
Dmitry Stogov c9eacb181c Added tests 2015-11-09 23:54:09 +03:00
Anatol Belski e029a86aad prepare news for next 2015-11-09 19:39:02 +01:00
Jakub Zelenka 570cdc05d7 Merge branch 'PHP-5.6' into PHP-7.0 2015-11-09 18:23:29 +00:00
Jakub Zelenka 1a12403002 Remove SNI test that trigger request to sni.velox.ch
This has been requested by Kaspar Brand who provides
sni.velox.ch. That site is only for interactive
testing and not for unit/integration/regression testing.
Although this test is run only in special cases (when
SNI_TESTS is defined) it should still be removed.

Also this test is not reliable as it depends on external
resources.
2015-11-09 18:11:18 +00:00
Andrea Faulds dae37661d9 Use ZEND_STRL macro for builtin_types 2015-11-09 11:15:58 +00:00
Xinchen Hui d70aa14f2c Fixed bug #70323 (Regression in zend_fetch_debug_backtrace() can cause segfaults) 2015-11-09 17:14:15 +08:00
Xinchen Hui 0a1e199682 Fixed bug #70624 opcache.huge_code_pages 2015-11-09 12:21:45 +08:00
Xinchen Hui 12f1cfa86a Update NEWS 2015-11-09 12:02:27 +08:00
Caleb Champlin 6ff014b31c Make sure context is set to null to prevent use after free 2015-11-09 11:58:34 +08:00
Xinchen Hui fe12492480 Merge branch 'patch-1' of https://github.com/colinodell/php-src into PHP-7.0 2015-11-07 23:06:41 -08:00
Xinchen Hui 83de5364b7 manually apply the typo fix in master 2015-11-07 23:03:25 -08:00
Lynn 269674f79d rm duplicate include 2015-11-07 23:01:23 -08:00
James Titcumb bb55ac6279 Fixed typo in reflection phpt 2015-11-07 22:58:56 -08:00
Colin O'Dell 55abf6dfb2 Fix description of a BC break 2015-11-07 17:48:02 -05:00
Nikita Popov bc3512c1d6 Fix various update_opN_const issues 2015-11-07 17:45:26 +01:00
Nikita Popov 9da456655c Refactor update_op2_const
Combines both switches into one, to avoid having to maintain the same
opcode list twice. This also makes most of the bugs fixed by the next
commit pretty obvious.

No functional change here.
2015-11-07 17:31:09 +01:00
Xinchen Hui de8bfb32bd Use defined macro 2015-11-07 07:43:18 -08:00
Xinchen Hui e9fd8ad446 Fixed bug #70876 (Segmentation fault when regenerating session id with strict mode) 2015-11-07 07:30:31 -08:00
Xinchen Hui 148bb622fa Revert "Fixed bug #70876 Segmentation fault when regenerating session id with strict mode"
This reverts commit 0bf3ebb4ba.
2015-11-07 07:17:43 -08:00
Xinchen Hui 2d8d97cee2 Fixed bug #70873 (Regression on private static properties access) 2015-11-07 06:50:36 -08:00
Reeze Xia c524f43e4f C99 complain fix 2015-11-07 22:15:19 +08:00
Reeze Xia e4c1e90536 Update NEWS 2015-11-07 22:10:56 +08:00
Reeze Xia 0bf3ebb4ba Fixed bug #70876 Segmentation fault when regenerating session id with strict mode
The comment *mod_data always be non-NULL is not true.
The same as this FIXME: https://github.com/php/php-src/blob/master/ext/session/mod_files.c#L676
2015-11-07 21:46:21 +08:00
Nikita Popov 99d818f1e9 Don't propagate into ops that error on non-string
To properly support this make update_opN_const fallible -- they
are not always called through replace_with_const.
2015-11-07 12:04:51 +01:00
Nikita Popov 00b37e718d Strip leading backslash in update_opN_const 2015-11-07 12:04:51 +01:00
Nikita Popov 632bee4abb Fix update_opX_const lowercasing
It was lowering in-place.
2015-11-07 12:04:51 +01:00
Matteo Beccati c263dcee2f Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix bug #70875 Segmentation fault if wsdl has no targetNamespace attribute
2015-11-07 11:05:36 +01:00
Matteo Beccati fd61666d96 Fix bug #70875 Segmentation fault if wsdl has no targetNamespace attribute 2015-11-07 11:00:33 +01:00
Matteo Beccati f2853386b1 Merge remote-tracking branch 'origin/PHP-5.6' into PHP-7.0
* origin/PHP-5.6:
  Always remember NEWS....
  Fix compile warnings about comparison of unsigned expression always being true
  Bump OCI8 version
  Fix bug 68298 (PHP OCI8 OCI int overflow) (Senthil)
2015-11-07 10:46:17 +01:00
Anatol Belski 0cbf3afe17 update NEWS 2015-11-06 23:08:18 +01:00
Anatol Belski d59eb9fcc3 fix decrement_function regarding bug #70863 2015-11-06 23:07:21 +01:00
Anatol Belski 8155ecba61 Fixed bug #70863 Incorect logic to increment_function for proxy objects 2015-11-06 23:07:16 +01:00
Anatol Belski 6897c1116a no more dev ZEND_VERSION 2015-11-06 23:07:10 +01:00
Bob Weinand 855bb36fd0 Add support for IPV6_V6ONLY on sockets 2015-11-06 21:45:31 +01:00
Christopher Jones 049325ca96 Fix bug 68298 (PHP OCI8 OCI int overflow) (Senthil) 2015-11-07 02:24:17 +11:00
Christopher Jones 089ca134fb Always remember NEWS.... 2015-11-07 02:15:24 +11:00
Christopher Jones a57b205383 Fix compile warnings about comparison of unsigned expression always being true 2015-11-07 02:14:18 +11:00
Christopher Jones f88a9a9643 Bump OCI8 version 2015-11-07 02:10:57 +11:00
Christopher Jones 3060dfd92e Fix bug 68298 (PHP OCI8 OCI int overflow) (Senthil) 2015-11-07 01:56:50 +11:00
Xinchen Hui 27aef97f65 Fixed bug #70868 (PCRE JIT and pattern reuse segfault) 2015-11-06 11:37:17 +08:00
Márcio Almada 283b6275df add failing test for bug #70868 2015-11-06 11:34:45 +08:00
Anatol Belski aa0d441ede update NEWS 2015-11-05 22:51:25 +01:00
Anatol Belski 01c844a01d use Z* macro name 2015-11-05 22:39:10 +01:00
Anatol Belski 2283551cfa fix NULL deref in mbstring post handler 2015-11-05 22:24:47 +01:00
Anatol Belski c1f893d894 fix NULL deref in pdo_firebird
ref #70862
2015-11-05 22:11:00 +01:00
Anatol Belski cff9e16a12 fix pdo_sqlite crash with empty bound stream 2015-11-05 21:50:34 +01:00
Anatol Belski 1406f80135 fix leak 2015-11-05 21:49:21 +01:00
Anatol Belski 7b32b8f4e1 fix pdo_mysql crash with empty bound stream param
rel #70862
2015-11-05 21:32:31 +01:00
Anatol Belski 1184f0aca5 add test for bug #70861 2015-11-05 19:48:08 +01:00
Fabian Franz 1fcadf67e6 Fix setting of empty string resource. 2015-11-05 19:47:12 +01:00
Anatol Belski f189353178 fix possible NULL deref in image functions 2015-11-05 18:16:32 +01:00
Anatol Belski 5ac288bcc6 fix crash in sqlite when executing with bound stream param
rel #70862
2015-11-05 18:08:08 +01:00
Anatol Belski 9385eb6ff8 re-update NEWS 2015-11-05 14:48:30 +01:00
Anatol Belski a80545992b update the actual sql parser file for #70861 2015-11-05 14:46:40 +01:00
Anatol Belski 5c96a91d77 Fix bug #70861 Segmentation fault in pdo_parse_params() during Drupal 8 test suite 2015-11-05 14:46:28 +01:00
Anatol Belski 9968129831 don't get invalid chmod mode through 2015-11-05 14:46:23 +01:00
Anatol Belski dea14fc707 zero cwd buffer before passing to chmod 2015-11-05 14:46:18 +01:00
Reeze Xia 435565a54f Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Make test for bug #70852 to cover all cases
  Fixed bug #70852 Segfault getting NULL offset of an ArrayObject.
2015-11-05 14:28:49 +08:00
Reeze Xia 1c0622a472 Make test for bug #70852 to cover all cases 2015-11-05 14:09:24 +08:00
Reeze Xia 51218b3b9d Fixed bug #70852 Segfault getting NULL offset of an ArrayObject. 2015-11-05 13:46:03 +08:00
Xinchen Hui e4ac4e75b5 Fixed bug #70853 (SplFixedArray throws exception when using ref variable as index) 2015-11-04 06:44:29 -08:00
Xinchen Hui fe0af271c6 Fixed bug #70843 (Segmentation fault on MacOSX with opcache.file_cache_only=1) 2015-11-04 18:59:30 +08:00
Xinchen Hui 2f2653aa77 Fixed bug #70805 (Segmentation faults whilst running Drupal 8 test suite) 2015-11-03 17:53:56 -08:00
Xinchen Hui d7ff107654 Fixed bug #70540 (sapi/fpm/tests/008.phpt and 016.phpt should be skipped on some platforms) 2015-11-02 16:43:28 +08:00
Xinchen Hui 8dd5e1c2b5 Add test_fpm_conf to skip some tests ranth than mark --xfail-- 2015-11-02 16:42:11 +08:00
Xinchen Hui 8d443d4626 Merge branch 'PHP-5.6' into PHP-7.0 2015-11-02 10:59:07 +08:00
Xinchen Hui 227c898cd9 Fixed test 2015-11-02 10:58:55 +08:00
Xinchen Hui 63c601b631 Merge branch 'PHP-5.6' into PHP-7.0 2015-11-02 10:55:05 +08:00
Xinchen Hui a23a88b3e7 Merge branch 'PHP-5.6' of git.php.net:/php-src into PHP-5.6 2015-11-02 10:47:32 +08:00
Xinchen Hui 37ed0dafe4 Fixed bug #70828 (php-fpm 5.6 with opcache crashes when referencing a non-existent constant) 2015-11-02 10:47:02 +08:00
Jakub Zelenka e62db72111 Use standard title for new openssl tests 2015-10-29 19:11:57 +00:00
root 06c6b51e7d new tests to openssl module, don't covered yet. 2015-10-29 19:06:40 +00:00
Andrey Hristov 6d51b7b2e3 Another Fix for Bug #68344 MySQLi does not provide way to disable peer certificate validation
Added the possibility to explicitly state that the peer certificate should not be checked.
Back to the default - checking the certificate.
Exported MYSQLI_CLIENT_SSL_DONT_VERIFY_SERVER_CERT
Usage : mysqli_real_connect( , , , , , MYSQLI_CLIENT_SSL | MYSQLI_CLIENT_SSL_DONT_VERIFY_SERVER_CERT)

If mysqli_ssl_set() is not called, but only MYSQLI_CLIENT_SSL is passed, without the (don't) very flag,
then no verification takes place.
2015-10-27 12:59:09 +01:00
Xinchen Hui 008d8b6789 Fixed bug #70656 (require() statement broken after opcache_reset() or a few hours of use) 2015-10-26 17:28:19 -07:00
Xinchen Hui 31553f07f2 Revert "Fixed bug #70656 (require() statement broken after opcache_reset() or a few hours of use)"
This reverts commit 3ef96c2cc6.
2015-10-26 17:26:30 -07:00
Xinchen Hui 3ef96c2cc6 Fixed bug #70656 (require() statement broken after opcache_reset() or a few hours of use) 2015-10-26 17:09:42 -07:00
Leigh faf835be2b Use arc4random on OpenBSD 5.5+ and NetBSD 7+
As discussed with @weltling, keeping arc4random on the condition that the OS has a solid implementation of it
2015-10-30 19:08:20 +00:00
Reeze Xia c4297a5a29 This couldn't be false as it has been checked before 2015-10-30 19:50:54 +08:00
Reeze Xia 68b431e37d Use h parameter to avoid duplicate ht access of array_combine() 2015-10-30 19:49:04 +08:00
Dmitry Stogov 3c5a3e77d4 Fixed incomplete initialization. 2015-10-30 07:15:56 +03:00
Jakub Zelenka 41de89f61b Merge branch 'PHP-5.6' into PHP-7.0 2015-10-29 19:14:25 +00:00
Dmitry Stogov c67fc6bb09 Fixed memory leak in php_stream_context_set_option() 2015-10-29 20:06:55 +03:00
Xinchen Hui 241e340f78 Make these tests fail faster, Thanks to GFW 2015-10-29 15:01:43 +08:00
Xinchen Hui 661798ad34 Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0 2015-10-29 14:35:31 +08:00
Xinchen Hui 179fba3f38 Fixed bug #70808 (array_merge_recursive corrupts memory of unset items)
I knew, this fix seems ugly
2015-10-29 14:33:58 +08:00
Julien Pauli eb59dd7d81 Don't remap .text segment if huge pages are not available. 2015-10-29 08:44:19 +03:00
Andrey Hristov 2b23ba97f3 Fix mysqli tests 2015-10-28 12:56:12 +01:00
Anatol Belski 5dd59cc90d sync NEWS 2015-10-27 20:10:06 +01:00
Anatol Belski ac4601eadd 7.0.1 is next 2015-10-27 20:08:54 +01:00
Dmitry Stogov eb32da13cd Fix frequent reallocations with many small strings 2015-10-27 17:07:58 +01:00
Anatol Belski 0e50a4c008 correct snprintf usage 2015-10-27 17:07:51 +01:00
Andrey Hristov c133515811 Merge branch 'PHP-5.6' into PHP-7.0 2015-10-27 13:32:45 +01:00
Leigh a53510239f Remove arc4random
There has been a lot of discussion around whether arc4random should be included. Given how many different impementations of it are in the wild, we can't guarantee a secure implementation on all platforms.
2015-10-26 20:40:28 +00:00
Anatol Belski fff11a1e07 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
  Fixed bug #70718 stream_select() when OpenSSL extension is loaded on PHP Win64
  unbreak coverage data: fix #line directives in phpdbg parser
  exclude datelib from coverage report as asked by Derick
2015-10-26 15:57:26 +01:00
Anatol Belski 2f7a8515ca update NEWS 2015-10-26 15:56:34 +01:00
Anatol Belski 83bfefeccb Fixed bug #70718 stream_select() when OpenSSL extension is loaded on PHP Win64 2015-10-26 15:54:29 +01:00
Dmitry Stogov 0172f198e3 Fixed inconsistent exception handling (uopz/tests/006.phpt was failed when PHP build with --disable-gcc-global-regs). 2015-10-26 16:01:20 +03:00
Xinchen Hui 5767f2b648 Fixed bug #70785 (Infinite loop due to exception during identical comparison) 2015-10-26 11:15:17 +08:00
Jakub Zelenka 2ee99f8954 Check EVP_SealFinal return code
This can be done since we no longer support OpenSSL 0.9.6
2015-10-25 17:53:39 +00:00
Bob Weinand ac58d21aa3 Fix refcount reaching 2^32 - 1 for resources
Happens e.g. in proc_close() when nothing is referencing the file handles, e.g. they have refcount 0 when passed to zend_list_close() and then zend_list_delete() which decrements it to (uint32_t) -1
2015-10-25 18:47:50 +01:00
Nuno Lopes 36311ee4fd unbreak coverage data: fix #line directives in phpdbg parser 2015-10-24 18:12:24 -04:00
Nuno Lopes a0665f3a18 unbreak coverage data: fix #line directives in phpdbg parser 2015-10-24 17:45:53 -04:00
Nuno Lopes 0e069fa57d exclude datelib from coverage report as asked by Derick 2015-10-24 17:38:20 -04:00
Nuno Lopes 87498c5c39 exclude datelib from coverage report as asked by Derick 2015-10-24 17:37:00 -04:00
Nikita Popov b9cc3176eb Fix bug #70782 2015-10-24 23:19:02 +02:00
Anatol Belski aae108c1ce Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix globals initialization in sapi/cgi
2015-10-23 13:59:27 +02:00
Anatol Belski 22af88274b Fix globals initialization in sapi/cgi
Basically backport 8430ec17
2015-10-23 13:56:40 +02:00
Anatol Belski 448d1ce428 rather use the supplied inttypes.h with vc14 2015-10-23 09:47:00 +02:00
Anatol Belski 5ba763413b fix test redirection when run not from source root 2015-10-23 09:42:19 +02:00
Xinchen Hui 95446b4416 Indents 2015-10-23 11:19:30 +08:00
c9s bbaf6daa9d Fix boolean conversion warnings
Summary:

The compiler complains and raised some warnings about boolean
conversion:

    warning: address of 'ce->constants_table' will always evaluate to
    'true' [-Wpointer-bool-conversion]

Since the address of 'HashTable' will always evaluate to true. the
condition should be removed. The scope is kept for local variables.

Platform:

    OS X 10.11

Compiler:

    Apple LLVM version 7.0.0 (clang-700.0.72)
    Target: x86_64-apple-darwin15.0.0
    Thread model: posix
2015-10-23 11:19:19 +08:00
Andrey Hristov 3dc0bf7428 Merge branch 'PHP-5.6' into PHP-7.0 2015-10-22 11:50:12 +02:00
Andrey Hristov afd31489d0 Improve fix for Bug #68344 MySQLi does not provide way to disable peer certificate validation 2015-10-22 11:48:53 +02:00
Andrey Hristov 8f9b2b68ee Merge branch 'PHP-5.6' into PHP-7.0 2015-10-21 15:52:38 +02:00
Andrey Hristov 8292260515 Fix for Bug #68344 MySQLi does not provide way to disable peer certificate validation 2015-10-21 15:10:24 +02:00
Andrey Hristov efd2b3f5f2 Update the certificates needed for the mysqli tests 2015-10-21 10:42:51 +02:00
Bob Weinand 2ef327caed Exempt paging from -qrr mode 2015-10-20 21:56:00 +02:00
Anatol Belski 1149833a58 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  backport 262160e and 2d55e8c into 5.6
2015-10-20 20:07:14 +02:00
Anatol Belski ccc95bf9df backport 262160e and 2d55e8c into 5.6 2015-10-20 20:05:44 +02:00
Xinchen Hui 6ad2c3eb33 Revert "Ensure proper exception handling and EX(opline) state in USER_OPCODE handler"
read: http://news.php.net/php.internals/88887

This reverts commit 808f62bb4d.
2015-10-20 08:12:04 -07:00
Xinchen Hui 673ad62eed Regenerate zend_ini_scanner.c 2015-10-20 16:58:30 +08:00
Xinchen Hui a5a5c3e09a Update NEWS 2015-10-20 13:26:40 +08:00
Xinchen Hui c7cb40353c Merge branch 'PHP-5.6' into PHP-7.0
Conflicts:
	Zend/zend_ini_scanner.c
2015-10-20 13:26:02 +08:00
Xinchen Hui d5f76caf6c Fixed bug #70748 (Segfault in ini_lex () at Zend/zend_ini_scanner.l) 2015-10-20 13:20:56 +08:00
Ferenc Kovacs 131a348d37 remove imap tests for now until I finish the sudoless dovecot config 2015-10-19 23:57:43 +02:00
Ferenc Kovacs fa0ffa4777 remove imap tests for now until I finish the sudoless dovecot config 2015-10-19 23:43:26 +02:00
Ferenc Kovacs 03e1e88db1 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  fixup, both catched by nikic
  use another character device in this test as /dev/console seems that it is different for lxc containers
  the de_DE(iso-8859-1) locale is not available on ubuntu by default, but there is no reason to require that over the utf-8 one
  let's try running our testsuite without sudo
2015-10-19 23:02:52 +02:00
Ferenc Kovacs 395ef4efb7 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fixup, both catched by nikic
  use another character device in this test as /dev/console seems that it is different for lxc containers
  the de_DE(iso-8859-1) locale is not available on ubuntu by default, but there is no reason to require that over the utf-8 one
  let's try running our testsuite without sudo
2015-10-19 22:47:23 +02:00
Ferenc Kovacs f3838a9c35 Merge branch 'pr-1483' into PHP-5.5
* pr-1483:
  fixup, both catched by nikic
  use another character device in this test as /dev/console seems that it is different for lxc containers
  the de_DE(iso-8859-1) locale is not available on ubuntu by default, but there is no reason to require that over the utf-8 one
  let's try running our testsuite without sudo
2015-10-19 22:44:19 +02:00
Stanislav Malyshev 26e5429f72 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix bug #64172
  Bug #70561: Fix DirectoryIterator to throw OutOfBoundsException

Conflicts:
	ext/pdo/pdo_dbh.c
2015-10-18 17:20:00 -07:00
Stanislav Malyshev 0b35e0c5a1 Merge branch 'pull-request/1535' into PHP-5.6
* pull-request/1535:
  Bug #70561: Fix DirectoryIterator to throw OutOfBoundsException
2015-10-18 17:17:55 -07:00
Daniel Persson 73384728ca Fix bug #64172
Check if the SQLSTATE error code is equal to PDO_ERR_NONE before we ask the driver.
And if no error is reported skip the extra call to the driver.
2015-10-18 17:06:54 -07:00
Daniel Persson 307c1f6bf0 Fix bug #64172
Check if the SQLSTATE error code is equal to PDO_ERR_NONE before we ask the driver.
And if no error is reported skip the extra call to the driver.
2015-10-18 17:03:39 -07:00
Stanislav Malyshev c7c6df6cec Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Skip some tests for platforms different than x86
2015-10-18 15:45:40 -07:00
Fábio Perez c76fd640e6 Skip some tests for platforms different than x86
These tests are verifying undefined behaviour such as shifting by more than 63
bits and by negative numbers.
2015-10-18 15:45:25 -07:00
Stanislav Malyshev 5f759b04b8 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Skip serialize test if ext/session is not loaded

Conflicts:
	ext/standard/tests/serialize/bug70219_1.phpt
2015-10-18 15:44:59 -07:00
Stanislav Malyshev b94f67885c Skip serialize test if ext/session is not loaded 2015-10-18 15:43:03 -07:00
Stanislav Malyshev 6a4803026d Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Remove wrong argument $session from SNMP::setSecurity()
  Fix SNMP::setSecurity() arginfo (Fixes bug #70476)
2015-10-18 14:51:13 -07:00
jubianchi 718445b096 Remove wrong argument $session from SNMP::setSecurity() 2015-10-18 14:48:39 -07:00
jubianchi 39a2514643 Fix SNMP::setSecurity() arginfo (Fixes bug #70476) 2015-10-18 14:48:25 -07:00
Felipe Pena f231ddddaf - Implemented output paging 2015-10-18 12:08:04 -02:00
Anatol Belski daddb7a832 updated NEWS 2015-10-18 11:36:04 +02:00
Anatol Belski dc241566aa Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  update NEWS
2015-10-18 11:35:25 +02:00
Anatol Belski 9501293de7 update NEWS 2015-10-18 11:34:42 +02:00
Anatol Belski af8937c056 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  C89 compat
  use spprintf instead (no need to estrdup afterwards).
  dblib's dbcolname can return null in some cases
  testcase fot bug #69757
  Segmentation fault on pdo_dblib::nextRowset (bug #69757)

Conflicts:
	ext/pdo_dblib/dblib_stmt.c
2015-10-18 11:28:57 +02:00
Anatol Belski 7f33ab834d C89 compat 2015-10-18 11:14:30 +02:00
MiRacLe.RPZ 2b5af600e3 use spprintf instead (no need to estrdup afterwards). 2015-10-18 11:10:50 +02:00
MiRacLe.RPZ 5c19355095 dblib's dbcolname can return null in some cases 2015-10-18 11:10:45 +02:00
MiRacLe.RPZ 4c8f064d7d testcase fot bug #69757 2015-10-18 11:10:39 +02:00
MiRacLe.RPZ acb2368976 Segmentation fault on pdo_dblib::nextRowset (bug #69757) 2015-10-18 11:10:34 +02:00
Aaron Piotrowski c100a742dc Fix missed assertion tests 2015-10-18 02:23:43 -05:00
Aaron Piotrowski 49d6336fae Always return boolean from assert
Matches docs prototype
2015-10-18 01:42:15 -05:00
Aaron Piotrowski 51953423ee Fix assert() implementation to match docs 2015-10-17 14:30:41 -05:00
Xinchen Hui e2d6090043 Fixed bug #70730 (Incorrect ArrayObject serialization if unset is called in serialize())
It's possible to fixed this in SPL side, but it will be ugly, and we
should make serialize more robust, so I prefer fix it in serialize side.
2015-10-17 05:28:49 -07:00
Xinchen Hui d4df6641c8 Fixed bug #70724 (Undefined Symbols from opcache.so on Mac OS X 10.10) 2015-10-17 01:52:32 -07:00
Felipe Pena 20a384dfa9 Fixed bug #70678 (PHP7 returns true when false is expected)
Cherry-pick from master.
2015-10-16 17:44:17 +02:00
Nikita Popov e3e92e96c1 Fixed bug #70430 2015-10-15 22:14:23 +02:00
Nikita Popov 06f38d36a8 Reindent zend_yytnamerr
Separating this whitespace change from the next diff.
2015-10-15 22:13:14 +02:00
Xinchen Hui 88a69ffa58 Fixed bug #70715 (Segmentation fault inside soap client) 2015-10-15 18:46:57 +08:00
Sara Golemon a2005cec5c Scan through a range of ports in case 31338 is busy
ext/standard/tests/network/ud4loop.phpt hardcodes port 31338.
If that fails to bind, try a few more (up to 31499) before giving up.
2015-10-14 22:44:27 -07:00
Xinchen Hui a2cfcdfbe9 Fixed bug #70709 (SOAP Client generates Segfault) 2015-10-15 10:19:43 +08:00
Ferenc Kovacs b610d740fd Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  prepare for 5.6.15RC1
2015-10-15 00:54:59 +02:00
Ferenc Kovacs 22cbf68344 prepare for 5.6.15RC1 2015-10-15 00:22:12 +02:00
Bob Weinand 60b4355168 Do not create a fake Closure for real Closures
That is solved by just returning the Closure as is, which is safe due to Closures being immutable objects
2015-10-14 12:07:33 +02:00
Xinchen Hui 5649b0ccba Merge branch 'patch-1' of https://github.com/glensc/php-src into PHP-7.0 2015-10-14 10:31:07 +08:00
Xinchen Hui 534856c98a Move the tests to proper place 2015-10-14 10:26:02 +08:00
Xinchen Hui 010509355d Fixed Conditional jump or move depends on uninitialised value 2015-10-14 10:19:57 +08:00
Bob Weinand d398cc9d10 Prevent memcmp() result truncation
This fixes reported issues with sapi/phpdbg/tests/watch_001.phpt
2015-10-13 15:51:23 +02:00
Bob Weinand 6efbfc4caf phpdbg test info_001.phpt was dependent on auto_globals_jit 2015-10-13 14:40:42 +02:00
Dmitry Stogov d949c3b6e5 Fixed incorrect "peak" memory consumption calculation. 2015-10-13 15:20:17 +03:00
Anatol Belski d1b67af3ab update UPGRADING 2015-10-13 11:47:30 +02:00
Xinchen Hui a8ae88162f Fixed bug #70689 (Exception handler does not work as expected) 2015-10-13 17:40:58 +08:00
Bob Weinand e85a0aba9b Fix on/off values in phpdbg lexer 2015-10-13 11:29:51 +02:00
Anatol Belski 4d8e284cce prepare NEWS for next 2015-10-13 10:34:30 +02:00
Anatol Belski afdbd8f95b update libs_versions.txt 2015-10-13 09:41:34 +02:00
Elan Ruusamäe 62c74ac634 Update UPGRADING.INTERNALS
typo fix
2015-10-03 22:10:47 +03:00
Bishop Bettini 368d3ff0d9 Bug #70561: Fix DirectoryIterator to throw OutOfBoundsException
-------------------------------------------------------------------------------
DirectoryIterator implements SeekableIterator, which "should throw an
OutOfBoundsException if the position is not seekable". As is, seek just returns
and one must call valid(). This approach is different than most (all?) other
SeekableIterator implementations and leads to developer confusion. See the
bug report for a specific example.
2015-09-23 11:14:52 -04:00
Ferenc Kovacs 95a0b11d0a fixup, both catched by nikic 2015-08-24 17:02:25 +02:00
Ferenc Kovacs e93d7953df use another character device in this test as /dev/console seems that it is different for lxc containers 2015-08-24 14:40:21 +02:00
Ferenc Kovacs 941bbf2067 the de_DE(iso-8859-1) locale is not available on ubuntu by default, but there is no reason to require that over the utf-8 one 2015-08-24 14:40:06 +02:00
Ferenc Kovacs 85d34c3264 let's try running our testsuite without sudo 2015-08-23 22:47:51 +02:00
1279 changed files with 10774 additions and 5604 deletions

No files matched your search

-4
View File
@@ -245,10 +245,6 @@ ext/reflection/spl.chm
ext/simplexml/examples/security.new.xml
ext/spl/examples/.htaccess
ext/spl/examples/*.phps
ext/sqlite/weztest.sqlite
ext/sqlite/libsqlite/src/sqlite.h
ext/sqlite/libsqlite/src/parse.out
ext/sqlite/libsqlite/src/libsqlite.dsw
ext/sqlite3/tests/phpsql*
ext/sqlite3/tests/*.db
ext/sqlite3/tests/*.tmp
+18 -8
View File
@@ -1,4 +1,22 @@
language: c
sudo: false
addons:
apt:
packages:
- locales
- language-pack-de
- re2c
- libgmp-dev
- libicu-dev
- libmcrypt-dev
- libtidy-dev
- libenchant-dev
- libaspell-dev
- libpspell-dev
- librecode-dev
- libsasl2-dev
- libxpm-dev
- libt1-dev
notifications:
email:
@@ -27,13 +45,6 @@ env:
- ENABLE_MAINTAINER_ZTS=0 ENABLE_DEBUG=0
- ENABLE_MAINTAINER_ZTS=1 ENABLE_DEBUG=1
before_install:
- sudo apt-get update -qq
- sudo apt-get install -y libenchant-dev libaspell-dev libpspell-dev librecode-dev libsasl2-dev libxpm-dev libt1-dev libc-client2007e-dev
- sudo cp ./travis/de /var/lib/locales/supported.d/de
- sudo dpkg-reconfigure locales
- ./travis/install.sh
before_script:
# Compile PHP
- ./travis/compile.sh
@@ -43,7 +54,6 @@ before_script:
- . ./travis/ext/pdo_mysql/setup.sh
- . ./travis/ext/pgsql/setup.sh
- . ./travis/ext/pdo_pgsql/setup.sh
- . ./travis/ext/imap/setup.sh
# Run PHPs run-tests.php
script:
+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
@@ -57,7 +57,7 @@ php_lcov.info: lcov-test
cp $$x.bbg lcov_data/$$y.bbg ; \
fi; \
done; \
for dir in ext/bcmath/libbcmath ext/fileinfo/libmagic ext/gd/libgd ext/mbstring/libmbfl ext/mbstring/oniguruma ext/pcre/pcrelib ext/pdo_sqlite/libsqlite ext/sqlite/libsqlite ext/sqlite3/libsqlite ext/xmlrpc/libxmlrpc ext/zip/lib; do \
for dir in ext/bcmath/libbcmath ext/date/lib ext/fileinfo/libmagic ext/gd/libgd ext/mbstring/libmbfl ext/mbstring/oniguruma ext/pcre/pcrelib ext/pdo_sqlite/libsqlite ext/sqlite3/libsqlite ext/xmlrpc/libxmlrpc ext/zip/lib; do \
if test -d lcov_data/$$dir; then \
rm -rf lcov_data/$$dir ; \
fi; \
+565 -441
View File
File diff suppressed because it is too large. Load diff
+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 |
+3 -5
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 |
@@ -599,10 +599,8 @@ TSRM_API int shmget(int key, int size, int flags)
return -1;
}
snprintf(shm_segment, sizeof(shm_segment)-1, "TSRM_SHM_SEGMENT:%d", key);
snprintf(shm_info, sizeof(shm_info)-1, "TSRM_SHM_DESCRIPTOR:%d", key);
shm_segment[sizeof(shm_segment)-1] = '\0';
shm_info[sizeof(shm_info)-1] = '\0';
snprintf(shm_segment, sizeof(shm_segment), "TSRM_SHM_SEGMENT:%d", key);
snprintf(shm_info, sizeof(shm_info), "TSRM_SHM_DESCRIPTOR:%d", key);
shm_handle = OpenFileMapping(FILE_MAP_ALL_ACCESS, FALSE, shm_segment);
info_handle = OpenFileMapping(FILE_MAP_ALL_ACCESS, FALSE, shm_info);
+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 |
+5 -4
View File
@@ -352,7 +352,7 @@ Relevant RFCs:
Other language changes
----------------------
* Removed support for static calls to non-static calls form an incompatible
* Removed support for static calls to non-static methods from an incompatible
$this context. In this case $this will not be defined, but the call will be
allowed with a deprecation notice. An example:
@@ -556,6 +556,10 @@ Other
. Added ability to move PHP code pages (PHP TEXT segment) into HUGE pages.
It's possible to enable/disable this feature in php.ini through
opcache.huge_code_pages=0/1. OS should be configured to provide huge pages.
. Added Windows only opcache.file_cache_fallback=1 ini option, which implies
the implemented fallback mechanism. When OPcache was not able to reattach
the shared memory segment to the desired address and opcache.file_cache
is on, opcache.file_cache_only=1 will be automatically enforced.
- OpenSSL
. Added "alpn_protocols" SSL context option allowing encrypted client/server
@@ -604,9 +608,6 @@ Other
5. Changed Functions
========================================
- parse_ini_file():
- parse_ini_string():
. Added scanner mode INI_SCANNER_TYPED to yield typed .ini values.
- unserialize():
. Added second parameter for unserialize function
(RFC: https://wiki.php.net/rfc/secure_unserialize) allowing to specify
+2 -2
View File
@@ -90,7 +90,7 @@ changes. See: https://wiki.php.net/phpng-upgrading
The only exceptions are the snprintf and zend_sprintf functions yet, because in some cases
they can use the implemenations available on the system, not the PHP one. With snprintf the
macros ZEND_INT_FMT and ZEND_UINT_FMT should be used.
macros ZEND_LONG_FMT and ZEND_ULONG_FMT should be used.
h. HashTable API
@@ -248,7 +248,7 @@ changes. See: https://wiki.php.net/phpng-upgrading
w. Tick functions internal API change
Tick functions have different declaration now. They expect a single
single parameter while before they were parameterless. When registering the
parameter while before they were parameterless. When registering the
tick function a value for this parameter must be passed. This value will be
provided to the tick function on every execution.
@@ -0,0 +1,19 @@
--TEST--
Array addition is not commutative -- do not swap operands
--FILE--
<?php
$array = [1, 2, 3];
$array = [4, 5, 6] + $array;
var_dump($array);
?>
--EXPECT--
array(3) {
[0]=>
int(4)
[1]=>
int(5)
[2]=>
int(6)
}
+1 -1
View File
@@ -18,7 +18,7 @@ bool(true)
bool(true)
Warning: assert(): assert(false) failed in %sexpect_016.php on line 6
NULL
bool(false)
bool(true)
Warning: zend.assertions may be completely enabled or disabled only in php.ini in %sexpect_016.php on line 8
+2 -2
View File
@@ -25,9 +25,9 @@ bool(true)
bool(true)
Warning: assert(): assert(false) failed in %sexpect_018.php on line 10
NULL
bool(false)
bool(true)
Warning: assert(): assert(false) failed in %sexpect_018.php on line 12
NULL
bool(false)
bool(true)
+2 -2
View File
@@ -68,7 +68,7 @@ catch (Exception $e) {
--EXPECTF--
Hello World!
===NONE===
string(56) "Method NoneTest::__toString() must return a string value"
string(%d) "Method NoneTest::__toString() must return a string value"
===THROW===
Fatal error: Method ErrorTest::__toString() must not throw an exception in %sbug26166.php on line %d
Fatal error: Method ErrorTest::__toString() must not throw an exception, caught Exception: This is an error! in %sbug26166.php 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;
+20
View File
@@ -0,0 +1,20 @@
--TEST--
Bug #52355 (Negating zero does not produce negative zero)
--FILE--
<?php
var_dump(-0.0);
var_dump(-(float)"0");
$foo = -sin(0);
var_dump($foo);
var_dump(@(1.0 / -0.0));
?>
--EXPECT--
float(-0)
float(-0)
float(-0)
float(-INF)
+1 -1
View File
@@ -14,7 +14,7 @@ class Bad {
$bad = new Bad();
echo "$bad";
--EXPECTF--
Fatal error: Method Bad::__toString() must not throw an exception in %sbug60909_2.php on line 0
Fatal error: Method Bad::__toString() must not throw an exception, caught Exception: Oops, I cannot do this in %sbug60909_2.php on line %d
!!!shutdown!!!
+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
+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 #70430: Stack buffer overflow in zend_language_parser()
--FILE--
<?php
$"*** Testing function() : ***\n";
?>
--EXPECTF--
Parse error: syntax error, unexpected '"*** Testing function() : ***' (T_CONSTANT_ENCAPSED_STRING), expecting variable (T_VARIABLE) or '{' or '$' in %s on line %d
+22
View File
@@ -0,0 +1,22 @@
--TEST--
Bug #70689 (Exception handler does not work as expected)
--FILE--
<?php
function foo($foo) {
echo "Executing foo\n";
}
set_error_handler(function($errno, $errstr) {
throw new Exception($errstr);
});
try {
foo();
} catch (Exception $e) {
echo $e->getMessage(), "\n";
}
?>
--EXPECTF--
Missing argument 1 for foo(), called in %sbug70689.php on line %d and defined
+20
View File
@@ -0,0 +1,20 @@
--TEST--
Bug #70748 (Segfault in ini_lex () at Zend/zend_ini_scanner.l)
--FILE--
<?php
$ini = '[${ ';
$ini_file = __DIR__ . "/bug70748.ini";
file_put_contents($ini_file, $ini);
var_dump(parse_ini_file($ini_file));
?>
--CLEAN--
<?php
unlink(__DIR__ . "/bug70748.ini");
?>
--EXPECTF--
Warning: syntax error, unexpected $end, expecting '}' in %sbug70748.ini on line %d
in %sbug70748.php on line %d
bool(false)
+10
View File
@@ -0,0 +1,10 @@
--TEST--
Bug #70782: null ptr deref and segfault (zend_get_class_fetch_type)
--FILE--
<?php
(-0)::$prop;
?>
--EXPECTF--
Fatal error: Illegal class name in %s on line %d
+25
View File
@@ -0,0 +1,25 @@
--TEST--
Bug #70785 (Infinite loop due to exception during identical comparison)
--FILE--
<?php
set_error_handler(function($no, $msg) {
throw new Exception($msg);
});
try {
if ($a === null) { // ZEND_VM_SMART_BRANCH
undefined_function('Null');
}
} catch (Exception $e) {
}
try {
$c === 3; // ZEND_VM_NEXT_OPCODE
undefined_function();
} catch (Exception $e) {
}
?>
okey
--EXPECT--
okey
+17
View File
@@ -0,0 +1,17 @@
--TEST--
Bug #70804 (Unary add on negative zero produces positive zero)
--FILE--
<?php
var_dump(+(-0.0));
var_dump(+(float)"-0");
$foo = +(-sin(0));
var_dump($foo);
?>
--EXPECT--
float(-0)
float(-0)
float(-0)
+46
View File
@@ -0,0 +1,46 @@
--TEST--
Bug #70805 (Segmentation faults whilst running Drupal 8 test suite)
--FILE--
<?php
class A {
}
class B {
}
class C {
public function __destruct() {
if (isset($GLOBALS["a"])) {
unset($GLOBALS["array"]);
unset($GLOBALS["a"]); // this will be called in gc_colloct_roots and put $a into gc roots buf
}
}
}
$a = new A;
$a->b = new B;
$a->b->a = $a;
$i = 0;
$c = new A;
$array = array($c); //This is used to leave a room for $GLOBALS["a"]
unset($c);
while ($i++ < 9997) {
$t = [];
$t[] = &$t;
unset($t);
}
$t = [new C];
$t[] = &$t;
unset($t); // This is used to trigger C::__destruct while doing gc_colloct_roots
$e = $a;
unset($a); // This one can not be putted into roots buf because it's full, thus gc_colloct_roots will be called,
// but C::__destructor which is called in gc_colloct_roots will put $a into buf
// which will make $a be putted into gc roots buf twice
var_dump(gc_collect_cycles());
?>
--EXPECT--
int(0)
+43
View File
@@ -0,0 +1,43 @@
--TEST--
Bug #70805 (Segmentation faults whilst running Drupal 8 test suite) (Crash)
--FILE--
<?php
class A {
}
class B {
}
class C {
public function __destruct() {
if (isset($GLOBALS["a"])) {
unset($GLOBALS["array"]);
unset($GLOBALS["a"]);
}
}
}
$a = new A;
$a->b = new B;
$a->b->a = $a;
$i = 0;
$c = new A;
$array = array($c);
unset($c);
while ($i++ < 9997) {
$t = [];
$t[] = &$t;
unset($t);
}
$t = [new C];
$t[] = &$t;
unset($t);
unset($a);
var_dump(gc_collect_cycles());
?>
--EXPECT--
int(2)
+37
View File
@@ -0,0 +1,37 @@
--TEST--
Bug #70805 (Segmentation faults whilst running Drupal 8 test suite) (Memleak)
--FILE--
<?php
class A {
}
class B {
}
class C {
public function __destruct() {
if (isset($GLOBALS["a"])) {
unset($GLOBALS["a"]);
}
}
}
$a = new A;
$a->b = new B;
$a->b->a = $a;
$i = 0;
while ($i++ < 9998) {
$t = [];
$t[] = &$t;
unset($t);
}
$t = [new C];
$t[] = &$t;
unset($t);
unset($a);
var_dump(gc_collect_cycles());
--EXPECT--
int(2)
+34
View File
@@ -0,0 +1,34 @@
--TEST--
Bug #70873 (Regression on private static properties access)
--FILE--
<?php
class A {
private static $x = 1;
}
class B extends A {
function bar() {
var_dump(self::$x);
}
};
class C extends A {
function bar() {
var_dump(A::$x);
}
};
$a = new B;
$a->bar();
$b = new C;
$b->bar();
?>
--EXPECTF--
Fatal error: Uncaught Error: Cannot access property B::$x in %sbug70873.php:%d
Stack trace:
#0 %sbug70873.php(%d): B->bar()
#1 {main}
thrown in %sbug70873.php on line %d
+15
View File
@@ -0,0 +1,15 @@
--TEST--
Bug #70895 null ptr deref and segfault with crafted callable
--FILE--
<?php
array_map("%n", 0);
array_map("%n %i", 0);
array_map("%n %i aoeu %f aoeu %p", 0);
?>
--EXPECTREGEX--
Warning: array_map\(\) expects parameter 1 to be a valid callback, function '%n' not found or invalid function name in .+
Warning: array_map\(\) expects parameter 1 to be a valid callback, function '%n %i' not found or invalid function name in .+
Warning: array_map\(\) expects parameter 1 to be a valid callback, function '%n %i aoeu %f aoeu %p' not found or invalid function name in .+bug70895.php on line \d+
+22
View File
@@ -0,0 +1,22 @@
--TEST--
Bug #70895 null ptr deref and segfault with crafted callable
--FILE--
<?php
function m($f,$a){
return array_map($f,0);
}
echo implode(m("",m("",m("",m("",m("0000000000000000000000000000000000",("")))))));
?>
--EXPECTF--
Warning: array_map() expects parameter 1 to be a valid callback, function '0000000000000000000000000000000000' not found or invalid function name in %sbug70898.php on line %d
Warning: array_map() expects parameter 1 to be a valid callback, function '' not found or invalid function name in %sbug70898.php on line %d
Warning: array_map() expects parameter 1 to be a valid callback, function '' not found or invalid function name in %sbug70898.php on line %d
Warning: array_map() expects parameter 1 to be a valid callback, function '' not found or invalid function name in %sbug70898.php on line %d
Warning: array_map() expects parameter 1 to be a valid callback, function '' not found or invalid function name in %sbug70898.php on line %d
Warning: implode(): Argument must be an array in %sbug70898.php on line %d
+10
View File
@@ -0,0 +1,10 @@
--TEST--
Bug #70912 (Null ptr dereference when class property is initialised to a dereferenced value)
--FILE--
<?php
class A {
public $a=[][];
}
?>
--EXPECTF--
Fatal error: Cannot use [] for reading in %sbug70912.php on line %d
+17
View File
@@ -0,0 +1,17 @@
--TEST--
Bug #70914 zend_throw_or_error() format string vulnerability
--SKIPIF--
<?php
if (!extension_loaded("pdo_sqlite")) {
die("skip pdo_sqlite required");
}
?>
--FILE--
<?php
$db = new PDO('sqlite::memory:');
$st = $db->query('SELECT 1');
$re = $st->fetchObject('%Z');
?>
--EXPECTREGEX--
Fatal error: Class '%Z' not found in .+bug70914.php on line \d+
+37
View File
@@ -0,0 +1,37 @@
--TEST--
Bug #70944 (try{ } finally{} can create infinite chains of exceptions)
--FILE--
<?php
try {
$e = new Exception("Foo");
try {
throw new Exception("Bar", 0, $e);
} finally {
throw $e;
}
} catch (Exception $e) {
var_dump((string)$e);
}
try {
$e = new Exception("Foo");
try {
throw new Exception("Bar", 0, $e);
} finally {
throw new Exception("Dummy", 0, $e);
}
} catch (Exception $e) {
var_dump((string)$e);
}
?>
--EXPECTF--
string(%d) "Exception: Foo in %sbug70944.php:%d
Stack trace:
#0 {main}"
string(%d) "Exception: Foo in %sbug70944.php:%d
Stack trace:
#0 {main}
Next Exception: Dummy in %sbug70944.php:%d
Stack trace:
#0 {main}"
+22
View File
@@ -0,0 +1,22 @@
--TEST--
Bug #70957 (self::class can not be resolved with reflection for abstract class)
--FILE--
<?php
abstract class Foo
{
function bar($a = self::class) {}
}
trait T {
public function bar() {
}
}
class B extends Foo
{
use T;
}
?>
--EXPECTF--
Warning: Declaration of T::bar() should be compatible with Foo::bar($a = 'Foo') in %sbug70957.php on line %d
+21
View File
@@ -0,0 +1,21 @@
--TEST--
Bug #70958 (Invalid opcode while using ::class as trait method paramater default value)
--FILE--
<?php
trait Foo
{
function bar($a = self::class) {
var_dump($a);
}
}
class B {
use Foo;
}
$b = new B;
$b->bar();
?>
--EXPECT--
string(1) "B"
+14
View File
@@ -0,0 +1,14 @@
--TEST--
Bug #70967 (Weird error handling for __toString when Error is thrown)
--FILE--
<?php
class A {
public function __toString() {
undefined_function();
}
}
echo (new A);
?>
--EXPECTF--
Fatal error: Method A::__toString() must not throw an exception, caught Error: Call to undefined function undefined_function() in %sbug70967.php on line %d
+15
View File
@@ -0,0 +1,15 @@
--TEST--
Bug #70987 (static::class within Closure::call() causes segfault)
--FILE--
<?php
class foo {}
$bar = function () {
return static::class;
};
var_dump($bar->call(new foo));
?>
--EXPECTF--
string(3) "foo"
+26
View File
@@ -0,0 +1,26 @@
--TEST--
Bug #70997 (When using parentClass:: instead of parent::, static context changed)
--FILE--
<?php
class A {
const TEST = false;
public function test()
{
var_dump(static::TEST);
}
}
class B extends A {
const TEST = true;
public function test()
{
A::test();
}
}
$b = new B;
$b->test();
--EXPECT--
bool(true)
+31
View File
@@ -0,0 +1,31 @@
--TEST--
Bug #71067 (Local object in class method stays in memory for each call)
--INI--
opcache.enable=0
error_reporting=0
--FILE--
<?php
class Test {
public function test(){
$arr = (object) [
'children' => []
];
$arr->children[] = 1;
return $arr;
}
}
$o = new Test();
$o->test();
print_r($o->test());
?>
--EXPECT--
stdClass Object
(
[children] => Array
(
[0] => 1
)
)
+14
View File
@@ -0,0 +1,14 @@
--TEST--
Bug #71086: Invalid numeric literal parse error within highlight_string() function
--FILE--
<?php
$highlightedString = highlight_string("<?php \n 09 09 09;", true);
var_dump($highlightedString);
?>
--EXPECT--
string(169) "<code><span style="color: #000000">
<span style="color: #0000BB">&lt;?php&nbsp;<br />&nbsp;</span><span style="color: #007700">09&nbsp;09&nbsp;09;</span>
</span>
</code>"
+19
View File
@@ -0,0 +1,19 @@
--TEST--
Bug #71154: Incorrect HT iterator invalidation causes iterator reuse
--FILE--
<?php
$array = [1, 2, 3];
foreach ($array as &$ref) {
/* Free array, causing free of iterator */
$array = [];
/* Reuse the iterator.
* However it will also be reused on next foreach iteration */
$it = new ArrayIterator([1, 2, 3]);
$it->rewind();
}
var_dump($it->current());
?>
--EXPECT--
int(1)
+25
View File
@@ -0,0 +1,25 @@
--TEST--
Bug #71163 (Segmentation Fault (cleanup_unfinished_calls))
--FILE--
<?php
function __autoload($name) {
eval ("class $name extends Exception { public static function foo() {}}");
throw new Exception("boom");
}
function test2() {
try {
Test::foo();
} catch (Exception $e) {
echo "okey";
}
}
function test() {
test2();
}
test();
?>
--EXPECT--
okey
+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
)
)
)
+1 -1
View File
@@ -1,5 +1,5 @@
--TEST--
Closure 059: Closure type hinting
Closure 059: Closure type declaration
--FILE--
<?php
class A {
+33
View File
@@ -64,6 +64,15 @@ $tests = [
[new DLL, null],
[new DLL, ClsUnrelated::class],
]],
[function() {}, [
[null, null],
[new Cls, null],
[new Cls, 'Cls'],
[null, 'Cls'],
[null, 'stdClass'],
[new stdClass, null],
]],
];
set_error_handler(function($errno, $errstr) {
@@ -79,6 +88,9 @@ foreach ($tests as list($fn, $bindings)) {
$c = (new ReflectionFunction($fn))->getClosure();
$fnStr = $fn;
}
if ($fn instanceof Closure) {
$fnStr = "(function() {})";
}
echo "$fnStr()\n" . str_repeat('-', strlen($fnStr) + 2), "\n\n";
@@ -206,3 +218,24 @@ Cannot rebind scope of closure created by ReflectionFunctionAbstract::getClosure
bindTo(new SplDoublyLinkedList, ClsUnrelated::class):
Cannot rebind scope of closure created by ReflectionFunctionAbstract::getClosure()
(function() {})()
-----------------
bindTo(null, null):
Success!
bindTo(new Cls, null):
Success!
bindTo(new Cls, Cls::class):
Success!
bindTo(null, Cls::class):
Success!
bindTo(null, stdClass::class):
Cannot bind closure to scope of internal class stdClass
bindTo(new stdClass, null):
Success!
+52
View File
@@ -0,0 +1,52 @@
--TEST--
Concatenating many small strings should not slowdown allocations
--SKIPIF--
<?php if (PHP_DEBUG) { die ("skip debug version is slow"); } ?>
--INI--
memory_limit=256m
--FILE--
<?php
/* To note is that memory usage can vary depending on whether opcache is on. The actual
measuring that matters is timing here. */
$time = microtime(TRUE);
/* This might vary on Linux/Windows, so the worst case and also count in slow machines. */
$t0_max = 0.1;
$t1_max = 0.4;
$datas = [];
for ($i = 0; $i < 220000; $i++)
{
$datas[] = [
'000.000.000.000',
'000.255.255.255',
'保留地址',
'保留地址',
'保留地址',
'保留地址',
'保留地址',
'保留地址',
];
}
$t0 = microtime(TRUE) - $time;
var_dump($t0 < $t0_max);
$texts = '';
foreach ($datas AS $data)
{
$texts .= implode("\t", $data) . "\r\n";
}
$t1 = microtime(TRUE) - $time;
var_dump($t1 < $t1_max);
?>
+++DONE+++
--EXPECT--
bool(true)
bool(true)
+++DONE+++
+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
+43
View File
@@ -0,0 +1,43 @@
--TEST--
Bug #70904 (yield from incorrectly marks valid generator as finished)
--FILE--
<?php
function g1() {
yield 1;
}
function g2($g1) {
yield from $g1;
echo "reached!\n";
yield 2;
}
$g1 = g1();
$g2 = g2($g1);
var_dump($g2->valid());
var_dump($g2->current());
$g1->next();
var_dump($g1->valid());
var_dump($g2->valid());
var_dump($g2->current());
$g2->next();
var_dump($g2->valid());
var_dump($g2->current());
$g2->next();
var_dump($g2->valid());
var_dump($g2->current());
?>
--EXPECT--
bool(true)
int(1)
bool(false)
bool(true)
int(1)
reached!
bool(true)
int(2)
bool(false)
NULL
+32
View File
@@ -0,0 +1,32 @@
--TEST--
Bug #70965 (yield from with a common iterator primes too much)
--FILE--
<?php
function it() {
yield from [1, 2, 3, 4, 5];
}
function bar($g) {
yield from $g;
}
$gen = it();
$gens[] = bar($gen);
$gens[] = bar($gen);
do {
foreach($gens as $g) {
var_dump($g->current());
$gen->next();
}
} while ($gen->valid());
?>
--EXPECT--
int(1)
int(2)
int(3)
int(4)
int(5)
int(5)
+49
View File
@@ -0,0 +1,49 @@
--TEST--
Bug #71013 (Incorrect exception handler with yield from)
--FILE--
<?php
class FooBar implements Iterator {
function __construct() { echo "Constructing new FooBar\n"; }
function __destruct() { echo "Destructing FooBar\n"; }
function current () { throw new Exception; }
function key () { return 0; }
function next () {}
function rewind () {}
function valid () { return true; }
}
function foo() {
try {
$f = new FooBar;
yield from $f;
} catch (Exception $e) {
echo "[foo()] Caught Exception\n";
}
}
function bar() {
echo "Starting bar()\n";
$x = foo();
try {
var_dump($x->current());
} catch (Exception $e) {
echo "[bar()] Caught Exception\n";
}
echo "Unsetting \$x\n";
unset($x);
echo "Finishing bar()\n";
}
bar();
?>
--EXPECT--
Starting bar()
Constructing new FooBar
[foo()] Caught Exception
Destructing FooBar
NULL
Unsetting $x
Finishing bar()
+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
+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;
@@ -37,5 +37,8 @@ int(4)
int(6)
int(3)
int(5)
int(3)
int(5)
NULL
bool(false)
@@ -0,0 +1,43 @@
--TEST--
Throwing into a generator yielding from an array/iterator
--FILE--
<?php
$data = [1, 2, 3];
function yielditer($arr) {
foreach($arr as $val) {
yield $val;
}
}
function yf($in) {
yield from $in;
}
function test($g) {
var_dump($g->current());
try {
$g->throw(new Exception("Exception!"));
} catch (Exception $e) {
echo "{$e->getMessage()}\n";
}
var_dump($g->current());
}
$yfiter = yf($data);
$yfgen = yf(yielditer($data));
test(yf($data));
echo "\n";
test(yf(yielditer($data)));
?>
--EXPECT--
int(1)
Exception!
NULL
int(1)
Exception!
NULL
+43
View File
@@ -0,0 +1,43 @@
--TEST--
Using an integer as a static property name
--FILE--
<?php
class Foo {
public static $bar = 42;
}
$n = 42;
${42} = 24;
var_dump(${42});
var_dump(${(int) 42});
var_dump(${(int) $n});
try {
var_dump(Foo::${42});
} catch (Error $e) {
echo $e->getMessage(), "\n";
}
try {
var_dump(Foo::${(int) 42});
} catch (Error $e) {
echo $e->getMessage(), "\n";
}
try {
var_dump(Foo::${(int) $n});
} catch (Error $e) {
echo $e->getMessage(), "\n";
}
?>
--EXPECT--
int(24)
int(24)
int(24)
Access to undeclared static property: Foo::$42
Access to undeclared static property: Foo::$42
Access to undeclared static property: Foo::$42
+19
View File
@@ -0,0 +1,19 @@
--TEST--
int memory_get_peak_usage ([ bool $real_usage = false ] );
--CREDITS--
marcosptf - <marcosptf@yahoo.com.br> - #phparty7 - @phpsp - novatec/2015 - sao paulo - br
--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)
+1 -1
View File
@@ -1,5 +1,5 @@
--TEST--
055: typehints in namespaces
055: types in namespaces
--FILE--
<?php
namespace test\ns1;
+1 -1
View File
@@ -11,4 +11,4 @@ echo __NAMESPACE__ . "\n";
===DONE===
--EXPECTF--
Fatal error: Namespace declaration statement has to be the very first statement in the script in %sns_068.php on line %d
Fatal error: Namespace declaration statement has to be the very first statement or after any declare call in the script in %sns_068.php on line %d
+1 -1
View File
@@ -11,4 +11,4 @@ echo "ok\n";
}
?>
--EXPECTF--
Fatal error: Namespace declaration statement has to be the very first statement in the script in %s on line %d
Fatal error: Namespace declaration statement has to be the very first statement or after any declare call in the script in %sns_083.php on line %d
+23
View File
@@ -0,0 +1,23 @@
--TEST--
return type with finally
--INI--
opcache.enable=0
--FILE--
<?php
function foo() : array {
try {
throw new Exception("xxxx");
} finally {
return ;
}
}
foo();
?>
--EXPECTF--
Fatal error: Uncaught TypeError: Return value of foo() must be of the type array, none returned in %s29.php:%d
Stack trace:
#0 %s(%d): foo()
#1 {main}
thrown in %s029.php on line %d
+23
View File
@@ -0,0 +1,23 @@
--TEST--
Bug #71092 (Segmentation fault with return type hinting)
--INI--
opcache.enable=0
--FILE--
<?php
function boom(): array {
$data = [['id']];
switch ($data[0]) {
case ['id']:
return;
}
}
boom();
?>
--EXPECTF--
Fatal error: Uncaught TypeError: Return value of boom() must be of the type array, none returned in %sbug71092.php:%d
Stack trace:
#0 %s(%d): boom()
#1 {main}
thrown in %sbug71092.php 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
+40
View File
@@ -0,0 +1,40 @@
--TEST--
Combination of foreach, finally and goto (call order)
--FILE--
<?php
class A {
public $n = 0;
function __construct($n) {
$this->n = $n;
}
function __destruct() {
echo "destruct" . $this->n . "\n";
}
}
foreach ([new A(1)] as $a) {
$a = null;
try {
foreach ([new A(2)] as $a) {
$a = null;
try {
foreach ([new A(3)] as $a) {
$a = null;
goto out;
}
} finally {
echo "finally1\n";
}
out: ;
}
} finally {
echo "finally2\n";
}
}
?>
--EXPECT--
destruct3
finally1
destruct2
finally2
destruct1
+42
View File
@@ -0,0 +1,42 @@
--TEST--
Combination of foreach, finally and exception (call order)
--FILE--
<?php
class A {
public $n = 0;
function __construct($n) {
$this->n = $n;
}
function __destruct() {
echo "destruct" . $this->n . "\n";
}
}
foreach ([new A(1)] as $a) {
$a = null;
try {
foreach ([new A(2)] as $a) {
$a = null;
try {
foreach ([new A(3)] as $a) {
$a = null;
throw new Exception();
}
} finally {
echo "finally1\n";
}
}
} catch (Exception $e) {
echo "catch\n";
} finally {
echo "finally2\n";
}
}
?>
--EXPECT--
destruct3
finally1
destruct2
catch
finally2
destruct1
@@ -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
@@ -1,5 +1,5 @@
--TEST--
callable type hint#001
callable type#001
--FILE--
<?php
@@ -21,7 +21,7 @@ foo($closure);
string(6) "strpos"
string(3) "foo"
Deprecated: Non-static method bar::baz() should not be called statically in %scallable_type_hint_001.php on line %d
Deprecated: Non-static method bar::baz() should not be called statically in %s on line %d
array(2) {
[0]=>
string(3) "bar"
@@ -1,5 +1,5 @@
--TEST--
callable type hint#002 - Reflection
callable type#002 - Reflection
--FILE--
<?php
@@ -1,5 +1,5 @@
--TEST--
callable type hint#003
callable type#003
--FILE--
<?php
@@ -1,5 +1,5 @@
--TEST--
Closure with variadic type hint
Closure with variadic type declaration
--FILE--
<?php
$f = function (stdClass ...$a) {
@@ -1,5 +1,5 @@
--TEST--
Inexistent class as typehint receiving scalar argument
Inexistent class as type receiving scalar argument
--FILE--
<?php
@@ -1,5 +1,5 @@
--TEST--
Scalar type hint - internal function strict mode
Scalar type - internal function strict mode
--FILE--
<?php
declare(strict_types=1);
@@ -32,4 +32,4 @@ try {
*** Trying Array Map With Invalid Callback
*** Caught array_map() expects parameter 1 to be a valid callback, first array member is not a valid class name or object
*** Trying Strlen With Float
*** Caught strlen() expects parameter 1 to be string, float given
*** Caught strlen() expects parameter 1 to be string, float given
@@ -1,5 +1,5 @@
--TEST--
Scalar type hint basics
Scalar type basics
--FILE--
<?php
@@ -45,7 +45,7 @@ $values = [
];
foreach ($functions as $type => $function) {
echo PHP_EOL, "Testing '$type' typehint:", PHP_EOL;
echo PHP_EOL, "Testing '$type' type:", PHP_EOL;
foreach ($values as $value) {
echo PHP_EOL . "*** Trying ";
var_dump($value);
@@ -60,7 +60,7 @@ echo PHP_EOL . "Done";
?>
--EXPECTF--
Testing 'int' typehint:
Testing 'int' type:
*** Trying int(1)
int(1)
@@ -114,7 +114,7 @@ int(0)
*** Trying resource(%d) of type (stream)
*** Caught Argument 1 passed to {closure}() must be of the type integer, resource given, called in %s on line %d
Testing 'float' typehint:
Testing 'float' type:
*** Trying int(1)
float(1)
@@ -168,7 +168,7 @@ float(0)
*** Trying resource(%d) of type (stream)
*** Caught Argument 1 passed to {closure}() must be of the type float, resource given, called in %s on line %d
Testing 'string' typehint:
Testing 'string' type:
*** Trying int(1)
string(1) "1"
@@ -221,7 +221,7 @@ string(6) "foobar"
*** Trying resource(%d) of type (stream)
*** Caught Argument 1 passed to {closure}() must be of the type string, resource given, called in %s on line %d
Testing 'bool' typehint:
Testing 'bool' type:
*** Trying int(1)
bool(true)
@@ -1,5 +1,5 @@
--TEST--
Scalar type hint - default via constants
Scalar type - default via constants
--FILE--
<?php
@@ -80,4 +80,4 @@ string(14) "this is a test"
Testing int with default null constant
NULL
Testing int with null null constant
NULL
NULL
@@ -1,5 +1,5 @@
--TEST--
Scalar type hint - default via constants - error condition
Scalar type - default via constants - error condition
--FILE--
<?php
@@ -17,4 +17,4 @@ Fatal error: Uncaught TypeError: Argument 1 passed to int_val() must be of the t
Stack trace:
#0 %s(%d): int_val()
#1 {main}
thrown in %s on line %d
thrown in %s on line %d
@@ -1,5 +1,5 @@
--TEST--
Float type hint should allow an integer as default even with strict types
Float type should allow an integer as default even with strict types
--FILE--
<?php
@@ -1,5 +1,5 @@
--TEST--
Float type hint should allow an integer as default
Float type should allow an integer as default
--FILE--
<?php
@@ -0,0 +1,16 @@
--TEST--
Float type should not allow invalid types as default
--FILE--
<?php
function test(float $arg = true)
{
var_dump($arg);
}
test();
?>
--EXPECTF--
Fatal error: Default value for parameters with a float type can only be float, integer, or NULL in %s on line %d
@@ -1,5 +1,5 @@
--TEST--
Scalar type hint missing parameters
Scalar type missing parameters
--FILE--
<?php
@@ -1,5 +1,5 @@
--TEST--
Scalar type hint nullability
Scalar type nullability
--FILE--
<?php
@@ -1,5 +1,5 @@
--TEST--
Scalar type hint - disallow relative typehints
Scalar type - disallow relative types
--FILE--
<?php
@@ -1,5 +1,5 @@
--TEST--
Scalar type hint names cannot be used as class, trait or interface names (2)
Scalar type names cannot be used as class, trait or interface names (2)
--FILE--
<?php
@@ -1,5 +1,5 @@
--TEST--
Scalar type hint names cannot be used as class, trait or interface names (2) - class_alias
Scalar type names cannot be used as class, trait or interface names (2) - class_alias
--FILE--
<?php
@@ -1,5 +1,5 @@
--TEST--
Scalar type hint names cannot be used as class, trait or interface names (2) - use
Scalar type names cannot be used as class, trait or interface names (2) - use
--FILE--
<?php
@@ -1,5 +1,5 @@
--TEST--
Scalar type hint names cannot be used as class, trait or interface names (3)
Scalar type names cannot be used as class, trait or interface names (3)
--FILE--
<?php
@@ -1,5 +1,5 @@
--TEST--
Scalar type hint names cannot be used as class, trait or interface names (3) - class_alias
Scalar type names cannot be used as class, trait or interface names (3) - class_alias
--FILE--
<?php
@@ -1,5 +1,5 @@
--TEST--
Scalar type hint names cannot be used as class, trait or interface names (3) - use
Scalar type names cannot be used as class, trait or interface names (3) - use
--FILE--
<?php
@@ -1,5 +1,5 @@
--TEST--
Scalar type hint names cannot be used as class, trait or interface names (4)
Scalar type names cannot be used as class, trait or interface names (4)
--FILE--
<?php
@@ -1,5 +1,5 @@
--TEST--
Scalar type hint names cannot be used as class, trait or interface names (4) - class_alias
Scalar type names cannot be used as class, trait or interface names (4) - class_alias
--FILE--
<?php
Loaded 100 of 1279 files, more files were not shown because too many files have changed in this diff. Show more