summaryrefslogtreecommitdiff
path: root/ext
Commit message (Collapse)AuthorAgeFilesLines
...
* | | Avoid useless date conversionDmitry Stogov2021-03-041-1/+12
| | |
* | | Explicitly print reference wrappers in debug_zval_dump()Nikita Popov2021-03-045-56/+137
| | | | | | | | | | | | Closes GH-6750.
* | | Switch to new ZPPDmitry Stogov2021-03-041-3/+3
| | |
* | | Switch to new ZPPDmitry Stogov2021-03-041-3/+5
| | |
* | | Loop invariant code motionDmitry Stogov2021-03-041-11/+12
| | |
* | | Merge branch 'PHP-8.0'Christoph M. Becker2021-03-031-1/+1
|\ \ \ | |/ / | | | | | | | | | * PHP-8.0: Fix #80825: ZipArchive::isCompressionMethodSupported does not exist
| * | Fix #80825: ZipArchive::isCompressionMethodSupported does not existChristoph M. Becker2021-03-031-1/+1
| | | | | | | | | | | | | | | `HAVE_METHOD_SUPPORTED` should have been defined after we updated to libzip 1.7.1 months ago.
* | | Add test cases for bcmath ValueErrorsAlex McLean2021-03-0310-0/+232
| | | | | | | | | | | | | | | | | | Closes GH-6714 Signed-off-by: George Peter Banyard <girgias@php.net>
* | | Merge branch 'PHP-8.0'Christoph M. Becker2021-03-031-3/+3
|\ \ \ | |/ / | | | | | | | | | * PHP-8.0: Fix test wrt. server.inc changes
| * | Fix test wrt. server.inc changesChristoph M. Becker2021-03-031-3/+3
| | |
* | | Merge branch 'PHP-8.0'Christoph M. Becker2021-03-032-13/+31
|\ \ \ | |/ / | | | | | | | | | * PHP-8.0: Fix #78719: http wrapper silently ignores long Location headers
| * | Merge branch 'PHP-7.4' into PHP-8.0Christoph M. Becker2021-03-032-13/+31
| |\ \ | | |/ | | | | | | | | | * PHP-7.4: Fix #78719: http wrapper silently ignores long Location headers
| | * Fix #78719: http wrapper silently ignores long Location headersChristoph M. Becker2021-03-032-13/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When opening HTTP streams, and reading the headers, we currently discard header lines longer than `HTTP_HEADER_BLOCK_SIZE` (1024 bytes). While this is not generally forbidden by RFC 7230, section 3.2.5, it is not generally allowed either, since that may change the "message framing or response semantics". We thus fix this by allowing arbitrarily long header lines. Closes GH-6720.
* | | Fixed bug #80808Nikita Popov2021-03-025-3/+36
| | | | | | | | | | | | | | | | | | If the ZEROFILL flag is set for a field, do not convert it into an integer (text protocol) or convert it explicitly into a padded string (binary protocol).
* | | Merge branch 'PHP-8.0'Dmitry Stogov2021-03-022-1/+50
|\ \ \ | |/ / | | | | | | | | | * PHP-8.0: Fixed bug #80802: (zend_jit_fetch_indirect_var assert failure with tracing JIT)
| * | Fixed bug #80802: (zend_jit_fetch_indirect_var assert failure with tracing JIT)Dmitry Stogov2021-03-012-1/+50
| | |
* | | Optimized object encoding without rebulding properties HashTableDmitry Stogov2021-03-011-0/+61
| | |
* | | Merge branch 'PHP-8.0'Christoph M. Becker2021-03-011-0/+93
|\ \ \ | |/ / | | | | | | | | | * PHP-8.0: Fix #80751: Comma in recipient name breaks email delivery
| * | Merge branch 'PHP-7.4' into PHP-8.0Christoph M. Becker2021-03-011-0/+93
| |\ \ | | |/ | | | | | | | | | * PHP-7.4: Fix #80751: Comma in recipient name breaks email delivery
| | * Fix #80751: Comma in recipient name breaks email deliveryChristoph M. Becker2021-03-011-0/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | So far, `SendText()` simply separates potential email address lists at any comma, disregarding that commas inside a quoted-string do not delimit addresses. We fix that by introducing an own variant of `strtok_r()` which caters to quoted-strings. We also make `FormatEmailAddress()` aware of quoted strings. We do not cater to email address comments, and potentially other quirks of RFC 5322 email addresses, but catering to quoted-strings is supposed to solve almost all practical use cases. Co-authored-by: Nikita Popov <nikita.ppv@gmail.com> Closes GH-6735.
| | * Fixed bug #80805Nikita Popov2021-03-012-4/+33
| | | | | | | | | | | | | | | | | | Handle missing result_var in binary_op_result_type. (cherry picked from commit 8446e2827585c37d0739f8d44fa8d359cbbb6551)
* | | Declare XMLReader propertiesMáté Kocsis2021-03-012-1/+113
| | | | | | | | | | | | Closes GH-6741
* | | Optimize serializing class namesTyson Andre2021-03-011-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | Because of the memcpy, compilers can't infer that ZSTR_LEN (i.e. class_name->len) did not change, so they copy it out of memory into a register for the last two accesses. php_var_serialize_string already does something similar. Closes GH-6734
* | | Optimized object serialization without rebulding properties HashTableDmitry Stogov2021-03-011-0/+51
| | |
* | | Incomplete class may have only single "MAGIC_MEMBER"Dmitry Stogov2021-03-011-0/+1
| | |
* | | Change the order of properties used in foreach(), var_dump(), serialize(), ↵Dmitry Stogov2021-03-0121-144/+144
|\ \ \ | | | | | | | | | | | | comparison, etc. Now properties are ordered according to their layout in zend_object structure.
| * | | Change the order of properties used for var_dump(), serialize(), comparison, ↵Dmitry Stogov2021-03-0121-144/+144
| | | | | | | | | | | | | | | | | | | | | | | | etc. Now properties are ordered according to their layout in zend_object structure.
* | | | Reference dynamic functions through dynamic_defsNikita Popov2021-03-014-28/+76
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, dynamically declared functions and closures are inserted into the function table under a runtime definition key, and then later possibly renamed. When opcache is not used and a file containing a closure is repeatedly included, this leads to a very large memory leak, as the no longer needed closure declarations will never be freed (https://bugs.php.net/bug.php?id=76982). With this patch, dynamic functions are instead stored in a dynamic_func_defs member on the op_array, which opcodes reference by index. When the parent op_array is destroyed, the dynamic_func_defs it contains are also destroyed (unless they are stilled used elsewhere, e.g. because they have been bound, or are used by a live closure). This resolves the fundamental part of the leak, though doesn't completely fix it yet due to some arena allocations. The main non-obvious change here is to static variable handling: We can't destroy static_variables_ptr in destroy_op_array, as e.g. that would clear the static variables in a dynamic function when the op_array containing it is destroyed. Static variable destruction is separated out for this reason (we already do static variable destruction separately for normal functions, so we only need to handle main scripts). Closes GH-5595.
* | | Clarify types in XmlReader property handlingNikita Popov2021-03-011-9/+7
| | | | | | | | | | | | | | | Make it clearer that the specified type is really the only type that can be returned.
* | | Remove useless conditional #ifdefPatrick Allaert2021-02-271-4/+1
| | | | | | | | | | | | | | | | | | Closes GH-6737 Signed-off-by: George Peter Banyard <girgias@php.net>
* | | Merge branch 'PHP-8.0'George Peter Banyard2021-02-275-4/+131
|\ \ \ | |/ / | | | | | | | | | * PHP-8.0: Fix Bug #80800 imap_open() fails when the flags parameter includes CL_EXPUNGE
| * | Fix Bug #80800 imap_open() fails when the flags parameter includes CL_EXPUNGEGeorge Peter Banyard2021-02-275-4/+131
| | | | | | | | | | | | | | | | | | | | | | | | This also affected imap_reopen(). Add a supplementary test that the CL_EXPUNGE flag does have the intended effect. Closes GH-6732
* | | serialize() optimizationDmitry Stogov2021-02-261-31/+88
| | |
* | | Optimize out zend_strpprintf() usage for simple concationatonDmitry Stogov2021-02-261-6/+18
| | |
* | | Improve SPL directory and stat() cache using zend_srting* instead of char*Dmitry Stogov2021-02-269-240/+261
| | |
* | | Merge branch 'PHP-8.0'Felipe Pena2021-02-251-0/+9
|\ \ \ | |/ /
| * | Merge branch 'PHP-7.4' into PHP-8.0Felipe Pena2021-02-251-0/+9
| |\ \ | | |/
| | * Fix memleak on ReflectionFunction and ReflectionGenerator classes when ↵Felipe Pena2021-02-251-0/+9
| | | | | | | | | | | | calling __construct after instantiation
* | | Remove quicktesterGeorge Peter Banyard2021-02-257-236/+403
| | | | | | | | | | | | | | | | | | This is barely used and more of a hinderence than anything else Closes GH-6712
* | | Merge branch 'PHP-8.0'Remi Collet2021-02-251-1/+2
|\ \ \ | |/ / | | | | | | | | | * PHP-8.0: skip test with openssl < 1.1.0
| * | Merge branch 'PHP-7.4' into PHP-8.0Remi Collet2021-02-251-1/+2
| |\ \ | | |/ | | | | | | | | | * PHP-7.4: skip test with openssl < 1.1.0
| | * skip test with openssl < 1.1.0Remi Collet2021-02-251-1/+2
| | | | | | | | | | | | | | | The test fails, but without any crash (this test is designed to catch a crash)
* | | Merge branch 'PHP-8.0'Nikita Popov2021-02-251-3/+7
|\ \ \ | |/ / | | | | | | | | | * PHP-8.0: crc32 module, clang spurious warning removal.
| * | crc32 module, clang spurious warning removal.David CARLIER2021-02-251-3/+7
| | | | | | | | | | | | Closes GH-6725.
* | | Speed up __sleep() and __wakeup() callsDmitry Stogov2021-02-252-35/+56
| | |
* | | Merge branch 'PHP-8.0'Nikita Popov2021-02-251-2/+2
|\ \ \ | |/ / | | | | | | | | | * PHP-8.0: mysqlnd pam fix test error message
| * | Merge branch 'PHP-7.4' into PHP-8.0Nikita Popov2021-02-251-2/+2
| |\ \ | | |/ | | | | | | | | | * PHP-7.4: mysqlnd pam fix test error message
| | * mysqlnd pam fix test error messageDaniel Black2021-02-251-2/+2
| | | | | | | | | | | | Closes GH-6727.
* | | Merge branch 'PHP-8.0'Nikita Popov2021-02-242-2/+2
|\ \ \ | |/ / | | | | | | | | | | | | | | | * PHP-8.0: Fix potential file collision in dom tests Fix bug #80757 (Exit code is 0 when could not open file) Update NEWS
| * | Merge branch 'PHP-7.4' into PHP-8.0Nikita Popov2021-02-242-2/+2
| |\ \ | | |/ | | | | | | | | | * PHP-7.4: Fix potential file collision in dom tests