summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | Merge branch 'PHP-7.4' into PHP-8.0Christoph M. Becker2021-02-251-0/+3
|\ \ | |/ | | | | | | * PHP-7.4: Capture Microsoft-defined HRESULT exit codes exit codes
| * Capture Microsoft-defined HRESULT exit codes exit codesDylan K. Taylor2021-02-251-0/+3
| | | | | | | | | | | | | | | | The lack of such a check leads to false-passes of tests on Windows which expect no output, but produce a segfault or similar issue. I discovered this a while ago due to bad tests in an extension I maintain. Closes GH-6722.
* | crc32 module, clang spurious warning removal.David CARLIER2021-02-251-3/+7
| | | | | | | | Closes GH-6725.
* | 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-7.4' into PHP-8.0Nikita Popov2021-02-242-2/+2
|\ \ | |/ | | | | | | * PHP-7.4: Fix potential file collision in dom tests
| * Fix potential file collision in dom testsNikita Popov2021-02-242-2/+2
| |
* | Merge branch 'PHP-7.4' into PHP-8.0Felipe Pena2021-02-241-0/+1
|\ \ | |/
| * Fix bug #80757 (Exit code is 0 when could not open file)Felipe Pena2021-02-241-0/+1
| |
| * Update NEWSFelipe Pena2021-02-241-0/+3
| |
* | Fixed bug #80782 (DASM_S_RANGE_VREG on PHP_INT_MIN-1)Dmitry Stogov2021-02-243-4/+32
| |
* | Merge branch 'PHP-7.4' into PHP-8.0Christoph M. Becker2021-02-231-1/+1
|\ \ | |/ | | | | | | * PHP-7.4: run-tests: fixed exit code not being set on BORKED tests
| * Merge branch 'PHP-7.3' into PHP-7.4Christoph M. Becker2021-02-231-1/+1
| |\ | | | | | | | | | | | | * PHP-7.3: run-tests: fixed exit code not being set on BORKED tests
| | * run-tests: fixed exit code not being set on BORKED testsPHP-7.3Dylan K. Taylor2021-02-231-1/+1
| | | | | | | | | | | | | | | | | | When no test paths are specified this shows up when 'make test' is used on a PECL extension without specifying tests to run (or in php-src too, I guess...) Closes GH-6717.
* | | Merge branch 'PHP-7.4' into PHP-8.0Christoph M. Becker2021-02-230-0/+0
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Update php_version.h to proper version number
| * | Update php_version.h to proper version numberChristoph M. Becker2021-02-231-3/+3
| | |
* | | Fixed bug #80786Nikita Popov2021-02-233-10/+39
| | | | | | | | | | | | | | | | | | | | | Don't use r0 as temporary register in math_double_long if it is already used for a memory result. This was already done in one branch, but not the other.
* | | Merge branch 'PHP-7.4' into PHP-8.0Christoph M. Becker2021-02-225-4/+70
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fix #75776: Flushing streams with compression filter is broken
| * | Fix #75776: Flushing streams with compression filter is brokenChristoph M. Becker2021-02-225-4/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | First, the `bzip2.compress` filter has the same issue as `zlib.deflate` so we port the respective fix[1] to ext/bz2. Second, there is still an issue, if a stream with an attached compression filter is flushed before it is closed, without any writes in between. In that case, the compression is never finalized. We fix this by enforcing a `_php_stream_flush()` with the `closing` flag set in `_php_stream_free()`, whenever a write filter is attached. This call is superfluous for most write filters, but does not hurt, even when it is unnecessary. [1] <http://git.php.net/?p=php-src.git;a=commit;h=20e75329f2adb11dd231852c061926d0e4080929> Closes GH-6703.
* | | Merge branch 'PHP-7.4' into PHP-8.0Christoph M. Becker2021-02-224-2/+21
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fix #80771: phpinfo(INFO_CREDITS) displays nothing in CLI
| * | Fix #80771: phpinfo(INFO_CREDITS) displays nothing in CLIChristoph M. Becker2021-02-224-2/+21
| | | | | | | | | | | | | | | | | | | | | There is no good reason not to show the credits in text based SAPIs, except for brevity. Thus, we suppress the credits from `php -i`. Closes GH-6710.
* | | Merge branch 'PHP-7.4' into PHP-8.0Christoph M. Becker2021-02-224-9/+33
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fix #80774: session_name() problem with backslash
| * | Fix #80774: session_name() problem with backslashChristoph M. Becker2021-02-224-9/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since we do no longer URL decode cookie names[1], we must not URL encode the session name. We need to prevent broken Set-Cookie headers, by rejecting names which contain invalid characters. [1] <http://git.php.net/?p=php-src.git;a=commit;h=6559fe912661ca5ce5f0eeeb591d928451428ed0> Closes GH-6711.
* | | Fix trampoline leak on dynamic static call of non-static methodNikita Popov2021-02-222-0/+38
| | | | | | | | | | | | Fixes oss-fuzz #30317.
* | | Merge branch 'PHP-7.4' into PHP-8.0Nikita Popov2021-02-221-0/+31
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fixed bug #80781
| * | Fixed bug #80781Nikita Popov2021-02-225-0/+77
| | | | | | | | | | | | | | | | | | | | | zend_find_array_dim_slow() may throw, make sure to handle this. This backports the code we already use for this on PHP-8.0, and also backports an exception check that makes this easier to catch.
* | | Avoid signed integer overflow in substr()Nikita Popov2021-02-182-2/+12
| | | | | | | | | | | | | | | | | | | | | Perform negation after the (size_t) cast rather than before, so as to avoid a signed integer overflow for PHP_INT_MIN. Fixes oss-fuzz #31069.
* | | Merge branch 'PHP-7.4' into PHP-8.0Christoph M. Becker2021-02-173-1/+27
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fix #80763: msgfmt_format() does not accept DateTime references
| * | Fix #80763: msgfmt_format() does not accept DateTime referencesChristoph M. Becker2021-02-173-0/+24
| | | | | | | | | | | | | | | | | | `intl_zval_to_millis()` needs to cater to references. Closes GH-6707.
* | | Color LEAK&FAIL like a failureNikita Popov2021-02-171-0/+1
| | |
* | | Prep for 8.0.4Sara Golemon2021-02-172-4/+4
| | |
* | | Fixed bug #80745 (JIT produces Assert failure and UNKNOWN:0 var_dumps in ↵Dmitry Stogov2021-02-174-12/+102
| | | | | | | | | | | | code involving bitshifts)
* | | Remove generated zend_jit_x86.c on `make clean`Dylan T2021-02-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Not removing this causes build failure when reconfiguring and rebuilding after a `make clean`, e.g. enabling/disabling ZTS. This makes https://bugs.php.net/bug.php?id=80561 more bearable. Ideally it would be rebuilt automatically on configuration change if necessary, but I have no idea how to implement this. Closes GH-6702.
* | | Fixed bug #80742 (Opcache JIT makes some boolean logic unexpectedly be true)Dmitry Stogov2021-02-163-3/+103
| | |
* | | Merge branch 'PHP-7.4' into PHP-8.0Nikita Popov2021-02-162-2/+5
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Handle incomplete result set metadata more gracefully
| * | Handle incomplete result set metadata more gracefullyNikita Popov2021-02-162-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | Rather than segfaulting because sname is missing lateron, report a FAIL here. As this indicates a server bug, the errors is reported as an out of band warning, rather than a client error. This fixes the PHP side of bug #80713.
* | | Mark resource-like objects as non-comparableNikita Popov2021-02-1613-0/+17
| | | | | | | | | | | | | | | | | | | | | As these hold on to some internal resource, there can't be two "equal" objects with different identity. Make sure the lack of public properties doesn't result in these being treated as always equal.
* | | Fixed bug #80723Nikita Popov2021-02-165-0/+35
| | | | | | | | | | | | | | | This fixes the issue just for the Socket class. Presumably we'll want to do the same for other "resource" objects.
* | | Merge branch 'PHP-7.4' into PHP-8.0Derick Rethans2021-02-160-0/+0
|\ \ \ | |/ /
| * | Fixed datesDerick Rethans2021-02-161-2/+2
| | |
* | | Merge branch 'PHP-7.4' into PHP-8.0Derick Rethans2021-02-160-0/+0
|\ \ \ | |/ /
| * | PHP-7.4 is now 7.4.17-devDerick Rethans2021-02-162-2/+5
| | |
* | | Increase timeout on asan jobNikita Popov2021-02-161-1/+1
| | | | | | | | | | | | | | | Regularly runs against the 5:10 hour limit on master. Increase it to 6:00 hours.
* | | Merge branch 'PHP-7.4' into PHP-8.0Nikita Popov2021-02-162-27/+29
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Suppress OpenSSL error on missing optional config
| * | Suppress OpenSSL error on missing optional configNikita Popov2021-02-162-27/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | openssl_pkey_new() fetches various options from the config file -- most of these are optional, and not specifying them is not an error condition from the perspective of the user. Unfortunately, the CONF_get_string() API pushes an error when accessing a key that doesn't exist (_CONF_get_string does not, but that is presumably a private API). This commit adds a helper php_openssl_conf_get_string() that automatically clears the error in this case. I've found that OpenSSL occasionally does the same thing internally: https://github.com/openssl/openssl/blob/22040fb790c854cefb04bed98ed38ea6357daf83/apps/req.c#L515-L517 Closes GH-6699.
* | | Adapt test case for libcurl 7.75.0+Christoph M. Becker2021-02-161-1/+1
| | | | | | | | | | | | | | | | | | | | | libcurl 7.75.0 finally adds support for `gophers://`, i.e. gopher over TLS. The protocol is neither standardized, nor is the protocol registered with IANA, but well, it is there and the test case should cater to that.
* | | Merge branch 'PHP-7.4' into PHP-8.0Nikita Popov2021-02-153-0/+25
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fixed bug #80747
| * | Fixed bug #80747Nikita Popov2021-02-153-0/+25
| | | | | | | | | | | | If RSA key generation fails, actually report that failure.
* | | Merge branch 'PHP-7.4' into PHP-8.0Nikita Popov2021-02-152-3/+23
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fix symtable cache being used while cleaning symtable
| * | Fix symtable cache being used while cleaning symtableNikita Popov2021-02-152-3/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We need to first clean the symtable and then check whether a cache slot is available for it. Otherwise, it may happen that a destructor runs while cleaning the table and uses up all the remaining slots in the cache. This is particularly insidious because once we overflow the cache, the first pointer we modify is symtable_cache_ptr, making it hard to understand what happened after the fact. Fixes oss-fuzz #30815.