1
0
mirror of https://github.com/php/php-src.git synced 2026-04-26 01:18:19 +02:00
Commit Graph

1558 Commits

Author SHA1 Message Date
Dmitry Stogov 998794f584 Always calculate calculate string hash value on attempt of interning 2017-10-31 15:35:44 +03:00
Dmitry Stogov 974a8f8ad2 Use internet strings for EG(ini_entries) 2017-10-31 02:16:46 +03:00
Dmitry Stogov fcc08ce19f Prevent reference-counting on persistent zvals (internal constants, default properties and constants of internal classes).
New macro ZVAL_COPY_OR_DUP() is used perform duplication, if necessary.
This should eliminate related race-coditions in ZTS build and prevent reference-counting bugs after unclean shutdown.
2017-10-30 23:13:10 +03:00
Xinchen Hui 60e8e4700c Merge branch 'PHP-7.2'
* PHP-7.2:
  Use abbrev
2017-10-30 18:17:50 +08:00
Xinchen Hui db4eb54149 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Use abbrev
2017-10-30 18:17:41 +08:00
Dmitry Stogov fad75a54d4 Merge branch 'master' into rc_debug
* master: (26 commits)
  Better fix for bug #75451 (Assertion fails while foreach on empty xpath query)
  Catch with the latest AppVeyor unzip errors
  Fixed type inference
  Fix bug #75453 Incorrect reflection on ibase_connect and ibase_pconnect
  Fix compiler warnings
  We don't use a specific model for a MAKERNOTE so remove these checks that doesn't do anything anyway
  Remove these old comments, as for the TODO, there is already a FR for this
  Re-enable AppVeyor cache
  make sure run-tests reports exit status upon prerequisite error
  Remove implicit constants from test case
  Fix invalid read in zend_use_undefined_constant()
  Fix invalid read in mb_ord()
  Remove --with-libmbfl configure option
  Fixed bug #75451 (Assertion fails while foreach on empty xpath query)
  Add tests for UConverter::getStandards()
  convert spaces to tabs in ext/ftp/tests/server.inc
  Add tests for ftp_rename
  Fix bug #75434 Wrong reflection for mysqli_fetch_all function
  Don't optimize input arrays with suffix holes
  Fix bug #75307 Wrong reflection for openssl_open function
  ...
2017-10-30 12:11:35 +03:00
Xinchen Hui d9de0f8683 Use abbrev 2017-10-30 16:26:59 +08:00
Dmitry Stogov 1f5c0fad21 Merge branch 'PHP-7.2'
* PHP-7.2:
  Fixed type inference
2017-10-30 10:44:25 +03:00
Dmitry Stogov 49256dcf6f Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed type inference
2017-10-30 10:44:12 +03:00
Dmitry Stogov 230e505fd8 Fixed type inference 2017-10-30 10:41:27 +03:00
Dmitry Stogov 49ea143bbd Encapsulate reference-counting primitives.
Prohibit direct update of GC_REFCOUNT(), GC_SET_REFCOUNT(), GC_ADDREF() and GC_DELREF() shoukf be instead.
Added mactros to validate reference-counting (disabled for now).
These macros are going to be used to eliminate race-condintions during reference-counting on data shared between threads.
2017-10-27 01:28:58 +03:00
Anatol Belski f24e597c85 Constify key access for hash and formal params
Keys created in shared memory and won't be modified and are free'd on
restart. Otherwise, keys passed to functions should not be modified,
too.
2017-10-19 12:07:08 +02:00
Dmitry Stogov 272f5a1716 Extend zend_string API to avoid reallocation in zend_string_init_interned() 2017-10-19 00:02:56 +03:00
Dmitry Stogov e87e62cc6f Moved ZCG(function_table) back into accel_acrivate. It should be unique per thread. 2017-10-18 18:26:30 +03:00
Anatol Belski 5315cea6e2 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Backport 7ff13badda into 7.0+
2017-10-18 16:27:31 +02:00
Anatol Belski 53d8775015 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Backport 7ff13badda into 7.0+
2017-10-18 16:24:23 +02:00
Dmitry Stogov b4903aef16 Move a part of opcache initialization into post_startup phase (when all extensions already loaded). 2017-10-18 17:18:54 +03:00
Anatol Belski d82805f097 Backport 7ff13badda into 7.0+ 2017-10-18 16:02:56 +02:00
Dmitry Stogov 7ff13badda Fixed required SHM memeory size calculation for scripts when opcache.revalidate_path is set. 2017-10-18 14:26:44 +03:00
Xinchen Hui d042d1d8e0 Cleanup cfg flags & Added ZEND_FUNC_HAS_EXTENED_INFO 2017-10-18 17:03:07 +08:00
Xinchen Hui 21f2ed6a63 Merge branch 'PHP-7.2'
* PHP-7.2:
  Fixed bug (assertion fails with extended info generated)
2017-10-17 19:47:40 +08:00
Xinchen Hui e53a9aaa4a Fixed bug (assertion fails with extended info generated) 2017-10-17 19:47:29 +08:00
Dmitry Stogov 61ef91bf0d Revert "Allow internal functions to return values by reference (this was disabled in implementation of DO_ICALL, but enabled in DO_FCALL)."
This reverts commit da781a5ac2.
2017-10-17 13:25:19 +03:00
Dmitry Stogov da781a5ac2 Allow internal functions to return values by reference (this was disabled in implementation of DO_ICALL, but enabled in DO_FCALL).
However, don't require internal functions returning by reference to return a reference.
Mark unserialize() as returning by reference and remove unwrap_reference hack, to allow proper returning of self referenced arrays using a reference.
Currently unserialize() is the only internal function that may return a reference.
2017-10-17 11:50:34 +03:00
Dmitry Stogov 1dd224dd12 Reuse interned strings from opcache SHM, if possible. 2017-10-16 19:20:16 +03:00
Xinchen Hui 7bce8c5224 Merge branch 'PHP-7.2'
* PHP-7.2:
  Fixed bug (Phi sources removel)
2017-10-16 15:23:02 +08:00
Xinchen Hui 8e147f12b9 Fixed bug (Phi sources removel) 2017-10-16 15:01:06 +08:00
Xinchen Hui dc6aaf0c8c Merge branch 'PHP-7.2'
* PHP-7.2:
  Fixed bug #75357 (segfault loading WordPress wp-admin)
2017-10-14 23:12:48 +08:00
Xinchen Hui abbdbc21b0 Fixed bug #75357 (segfault loading WordPress wp-admin) 2017-10-14 23:12:29 +08:00
Xinchen Hui bc038206ad Merge branch 'PHP-7.2'
* PHP-7.2:
  Prevent from being affected by local php.ini
  Added skipf
2017-10-13 18:24:27 +08:00
Xinchen Hui a52d1088e5 Added skipf 2017-10-13 18:21:41 +08:00
Xinchen Hui f87a0b32c6 Merge branch 'PHP-7.2'
* PHP-7.2:
  Fixed bug #75370 (Webserver hangs on valid PHP text)
  Fixed typo
2017-10-13 18:19:19 +08:00
Xinchen Hui e4f7ff9c0f Fixed bug #75370 (Webserver hangs on valid PHP text) 2017-10-13 18:18:10 +08:00
Xinchen Hui e50cc4d3af Fixed typo 2017-10-13 17:35:02 +08:00
Dmitry Stogov 2e0db496fa Fixed file_cache broken by recent AST related changes. 2017-10-10 19:37:46 +03:00
Dmitry Stogov 70b2ec5874 Merge branch 'PHP-7.2'
* PHP-7.2:
  Fixed cleanup after optimization passes
2017-10-10 19:37:40 +03:00
Dmitry Stogov 2929110ce1 Fixed cleanup after optimization passes 2017-10-10 19:25:51 +03:00
Dmitry Stogov 97e7521e49 AST don't have to be COPYABLE anymore. 2017-10-10 15:45:03 +03:00
Dmitry Stogov ef5ea48741 Always use IS_CONSTANT_AST (IS_CONSTANT is removed). 2017-10-10 10:11:05 +03:00
Dmitry Stogov 39ded1d5f8 Changed zend_ast_ref structure to use only one allocation, removing dichotomy between heap/arena ASTs. 2017-10-09 16:57:51 +03:00
Peter Kokot 3644cc6111 Remove some old apache2filter occurrences
apache2filter was supported in PHP <= 5.6. This patch removes some old
apache2filter occurrences. Also FreeBSD warning therefore is not needed
anymore when building PHP with apache2filter and in later versions don't
need to set the --with-tsrm-pth option.
2017-10-08 17:48:47 +02:00
Rasmus Lerdorf ec3ea3081d Add line numbers to Optimizer debug output 2017-10-06 17:18:58 -03:00
Rasmus Lerdorf 9fe6b29356 Add line numbers to Opcache's zend_dump_op() debug output 2017-10-06 11:03:07 -03:00
Dmitry Stogov cb9d81ef4f Refactored recursion pretection 2017-10-06 01:34:50 +03:00
Dmitry Stogov e70618aff6 Changed the way VM accesses constant operands in 64-bit builds. 2017-10-04 16:53:01 +03:00
Dmitry Stogov 2cbc75ec63 Merge branch 'PHP-7.2'
* PHP-7.2:
  Fixed rarely possible use-after-free
2017-10-04 16:40:03 +03:00
Dmitry Stogov e9426cf816 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed rarely possible use-after-free
2017-10-04 16:39:47 +03:00
Dmitry Stogov b6e34eaf04 Fixed rarely possible use-after-free 2017-10-04 16:38:55 +03:00
Dmitry Stogov e7afdb0668 Fixed invalid type 2017-10-04 16:06:57 +03:00
Xinchen Hui 95272f0b4a Merge branch 'PHP-7.2'
* PHP-7.2:
  Fixed bug #75267 (possible &/&& mixup)
2017-09-29 11:18:13 +08:00