1
0
mirror of https://github.com/php/php-src.git synced 2026-04-15 03:51:07 +02:00
Commit Graph

127492 Commits

Author SHA1 Message Date
Kamil Tekiela
5cef4e150b Merge branch 'PHP-8.1'
* PHP-8.1:
  Fix formatting in the new mysqli test
2021-12-30 19:32:39 +00:00
Kamil Tekiela
b51f51952a Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Fix formatting in the new mysqli test
2021-12-30 19:28:35 +00:00
Kamil Tekiela
49512b6b36 Fix formatting in the new mysqli test 2021-12-30 19:25:32 +00:00
Christoph M. Becker
15233a47b2 Merge branch 'PHP-8.1'
* PHP-8.1:
  Fix bug where large bigints may be truncated
2021-12-30 19:11:22 +01:00
Christoph M. Becker
ae9e98640a Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Fix bug where large bigints may be truncated
2021-12-30 19:10:36 +01:00
NathanFreeman
b3903515bf Fix bug where large bigints may be truncated
Unless stringified results are requested, we need to parse large
bigints as unsigned, to avoid wrap-around behavior.

Co-authored-by: Christoph M. Becker <cmbecker69@gmx.de>

Closes GH-7837.
2021-12-30 19:07:36 +01:00
Nikita Popov
55a4bae546 Merge branch 'PHP-8.1'
* PHP-8.1:
  Handle holes in zend_get_opcode_id()
2021-12-30 16:56:10 +01:00
Nikita Popov
b63e4cf727 Handle holes in zend_get_opcode_id()
Some opcodes may currently not be allocated.
2021-12-30 16:56:03 +01:00
Kamil Tekiela
a0be3f8b27 Merge branch 'PHP-8.1'
* PHP-8.1:
  Fix bug GH-7746 (mysqli_sql_exception->sqlstate is inaccessible)
2021-12-30 14:23:44 +00:00
Kamil Tekiela
8869bbe0e9 Fix bug GH-7746 (mysqli_sql_exception->sqlstate is inaccessible)
Closes GH-7747
2021-12-30 14:23:06 +00:00
Kamil Tekiela
50c7512f52 mysqli_result::__construct should throw exceptions (#7855) 2021-12-30 14:08:12 +00:00
Chun-Sheng, Li
f2b50156bc Add some more test cases for BCMath
Closes GH-7851.
2021-12-30 13:02:56 +01:00
Nikita Popov
0698bf794f Add helper for convertion to CHECK_VAR/FREE/NOP
This is a recurring pattern whenever an instruction with an
operand is deleted.
2021-12-30 12:44:57 +01:00
Nikita Popov
7d2f2a1005 Remove an incorrect JMPZNZ optimization
This is already skipped for TMP/VAR, but also needs to be skipped
for CV, because we need to insert CHECK_VAR in that case, if we're
being pedantic. That leaves us with CONST as the only case
we can handle, which is already covered by constant folding.

This optimization never actually triggers in our tests, so it's
not a big loss.
2021-12-30 12:06:19 +01:00
Máté Kocsis
a0ba10436c Merge branch 'PHP-8.1'
* PHP-8.1:
  Remove bogus type of $object param in SplObjectStorage::offsetSet()
2021-12-28 18:03:22 +01:00
Máté Kocsis
24be11f632 Remove bogus type of $object param in SplObjectStorage::offsetSet()
This parameter definitely only accepts objects, so we shouldn't explicitly
mark it as mixed. Looks like I accidentally added this type when adding
the tentative return type.

Closes GH-7840
2021-12-28 18:01:26 +01:00
Tyson Andre
85af420f79 [skip ci] Update documentation of supported php versions (#7822)
https://www.php.net/supported-versions.php

Co-authored-by: Christoph M. Becker <cmbecker69@gmx.de>
2021-12-28 11:35:45 -05:00
Dmitry Stogov
9362d6f5f0 Merge branch 'PHP-8.1'
* PHP-8.1:
  iSeparate tests
  JIT: Fix array clobbering by user error handler
2021-12-28 17:00:55 +03:00
Dmitry Stogov
c69b9426ff Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  iSeparate tests
  JIT: Fix array clobbering by user error handler
2021-12-28 17:00:40 +03:00
Dmitry Stogov
206bcff50d iSeparate tests 2021-12-28 16:56:23 +03:00
Dmitry Stogov
fd879e6fe4 JIT: Fix array clobbering by user error handler
Gixes oss-fuzz #43055
2021-12-28 16:51:03 +03:00
Christoph M. Becker
8147fec372 Merge branch 'PHP-8.1'
* PHP-8.1:
  Fix buffer allocations in zlog_stream_set_msg_suffix()
2021-12-28 13:29:42 +01:00
Christoph M. Becker
5d4bef0d0c Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Fix buffer allocations in zlog_stream_set_msg_suffix()
2021-12-28 13:28:55 +01:00
David Carlier
cb3d858745 Fix buffer allocations in zlog_stream_set_msg_suffix()
If that code was used, there would be a UAF scenario.

Closes GH-7835.
2021-12-28 13:27:54 +01:00
Dmitry Stogov
3319f17650 Merge branch 'PHP-8.1'
* PHP-8.1:
  Fix reference contig inference
2021-12-28 10:02:48 +03:00
Dmitry Stogov
8862e23098 Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Fix reference contig inference
2021-12-28 10:00:14 +03:00
Dmitry Stogov
de358f856f Fix reference contig inference
Fixes oss-fuzz #43032
2021-12-28 09:57:03 +03:00
Christoph M. Becker
693c8804c5 [ci skip] Merge branch 'PHP-8.1'
* PHP-8.1:
  Don't truncate subsecond precision in run-tests.php JUNIT output
2021-12-27 22:31:20 +01:00
Christoph M. Becker
b36f25ad10 [ci skip] Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Don't truncate subsecond precision in run-tests.php JUNIT output
2021-12-27 22:30:53 +01:00
Christoph M. Becker
87d9e02f01 Don't truncate subsecond precision in run-tests.php JUNIT output
When run-tests.php has been typed[1], the type of `$time` has been
chosen to be `int`.  This, however, leads to truncation, and the
somewhat relevant subsecond precision is lost.  We fix that by
changing the type to `float`, although `int|string` would be more
appropriate, but requires PHP ≥ 7.4.0.  Another option would be to
move the `number_format()` formatting into `junit_mark_test_as()`.

[1] <11274f53e7>

Closes GH-7836.
2021-12-27 22:15:33 +01:00
Dmitry Stogov
eb43f8a4f8 Eliminate more VERIFY_RETURN_TYPE instructions 2021-12-27 23:40:21 +03:00
Christoph M. Becker
1d4482908b Merge branch 'PHP-8.1'
* PHP-8.1:
  Revert "Fix zend_observer_fcall_end_all() accessing dangling pointers"
2021-12-27 21:11:24 +01:00
Christoph M. Becker
d58c48d45d Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Revert "Fix zend_observer_fcall_end_all() accessing dangling pointers"
2021-12-27 21:10:40 +01:00
Christoph M. Becker
ee610947ce Revert "Fix zend_observer_fcall_end_all() accessing dangling pointers"
This reverts commit 76e2a8380e.  Cf.
<76e2a8380e (r62560239)>.
2021-12-27 21:08:51 +01:00
Christoph M. Becker
a72a011054 Merge branch 'PHP-8.1'
* PHP-8.1:
  Fix zend_observer_fcall_end_all() accessing dangling pointers
2021-12-27 18:21:37 +01:00
Christoph M. Becker
d4c07df4df Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Fix zend_observer_fcall_end_all() accessing dangling pointers
2021-12-27 18:20:48 +01:00
Florian Sowade
76e2a8380e Fix zend_observer_fcall_end_all() accessing dangling pointers
This may happen, when the execute_data was allocated on the stack.  We
ensure that the runtime cache pointer is not NULL before dereferencing
it.

This is a partial fix for bug 81430.

Closes GH-7665.
2021-12-27 18:19:13 +01:00
Christoph M. Becker
71b55d7dd8 [ci skip] supportedOs Id for Windows 10 and 11 are the same
Cf. <https://docs.microsoft.com/en-us/windows/win32/sysinfo/targeting-your-application-at-windows-8-1>.
2021-12-27 15:18:47 +01:00
Christoph M. Becker
383bdbce64 Merge branch 'PHP-8.1'
* PHP-8.1:
  Fix GH-7815: php_uname doesn't recognise latest Windows versions
2021-12-27 15:09:02 +01:00
David Warner
f82593d597 Fix GH-7815: php_uname doesn't recognise latest Windows versions
We check `dwBuildNumber` to determine newer Windows versions.

Closes GH-7816.
2021-12-27 15:08:11 +01:00
Dmitry Stogov
a066b809de Skip abstract methods 2021-12-27 15:28:46 +03:00
Dmitry Stogov
2759e6bc69 Fixed assertion when check "instanceof" on unlinked class 2021-12-27 12:02:13 +03:00
Christoph M. Becker
124ac49325 [ci skip] Merge branch 'PHP-8.1'
* PHP-8.1:
  Fix bug40228*.phpt conflict
2021-12-26 23:28:59 +01:00
Christoph M. Becker
187e011710 [ci skip] Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Fix bug40228*.phpt conflict
2021-12-26 23:28:29 +01:00
Christoph M. Becker
7f0a1e2f2d Fix bug40228*.phpt conflict
Both tests use the same directory structure; we avoid that by
extracting to separate subdirectories.

Closes GH-7831.
2021-12-26 23:23:56 +01:00
Christoph M. Becker
5a3b0da19d Merge branch 'PHP-8.1'
* PHP-8.1:
  Mark curl tests using http2.golang.org as XFAIL
2021-12-26 22:30:16 +01:00
Christoph M. Becker
710dc03399 Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Mark curl tests using http2.golang.org as XFAIL
2021-12-26 22:29:17 +01:00
Christoph M. Becker
5005445994 Mark curl tests using http2.golang.org as XFAIL
http2.golang.org/serverpush has been retired[1], so we need to come up
with an alternative.  Until then, we mark the relevant tests as XFAIL
(although bug77535.phpt passes, what might be an indication that the
test needs further revision).  To avoid waiting for the timeout, we
also unconditionally skip these tests for now.

[1] <https://github.com/golang/go/issues/49301>

Closes GH-7829.
2021-12-26 22:27:15 +01:00
Alex Dowad
53ffba967c Implement fast text conversion interface for CP5022{0,1,2} 2021-12-26 22:19:51 +02:00
Alex Dowad
01afd9f141 Implement fast text conversion interface for JIS 2021-12-26 22:19:51 +02:00