Petr Sumbera
069bbf3e80
Fix zend_fibers.c build with ZEND_FIBER_UCONTEXT
...
Avoids (Solaris SPARC) issue:
zend_fibers.c:77:9: error: unknown type name 'ucontext_t'
Closes GH-7773.
2021-12-20 14:21:50 +01:00
Dmitry Stogov
ca3f7b0a73
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix incorrect optimization of ASSIGN_OP that may lead to memory leak
2021-12-20 15:17:30 +03:00
Dmitry Stogov
c8d10a8243
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix type inference for INIT_ARRAY with invalid index
2021-12-20 11:46:36 +03:00
Dmitry Stogov
75b2973974
Fix array clobbering by user error handler
...
Fixes oss-fuzz #42363
2021-12-15 12:20:37 +03:00
Dmitry Stogov
b16fc350a4
Move common code into helper
2021-12-14 15:31:53 +03:00
Dmitry Stogov
1e56b64759
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Combine ADDREF/DELREF
2021-12-13 22:54:45 +03:00
Dmitry Stogov
c787f42ceb
Combine ADDREF/DELREF
2021-12-13 22:38:23 +03:00
Dmitry Stogov
76075823e7
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix array clobering by user error handler
2021-12-13 15:20:16 +03:00
Dmitry Stogov
cbc0b1afeb
Fix array clobering by user error handler
...
Fixes oss-fuzz #42234
2021-12-13 14:59:30 +03:00
Dmitry Stogov
f8f0a650a7
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix incorrect optimization that leads to memory leak
2021-12-13 13:09:05 +03:00
Christoph M. Becker
206c521a1f
Fix GH-7757: Multi-inherited final constant causes fatal error
...
"Diamond" inheritance of final constants is supposed to be supported.
Closes GH-7767.
2021-12-12 22:22:51 +01:00
Christoph M. Becker
a708db9c8a
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix GH-7759: Incorrect return types for hash() and hash_hmac()
2021-12-12 15:47:19 +01:00
Dmitry Stogov
cfcee97ad6
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Remove range inference for booleans.
2021-12-10 14:33:36 +03:00
Christoph M. Becker
2362722dcf
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix #81585 : cached_chunks are not counted to real_size on shutdown
2021-12-10 12:25:44 +01:00
Christoph M. Becker
5675ebe649
Fix #81585 : cached_chunks are not counted to real_size on shutdown
...
The amount of allocated system memory is kept in `real_size`, including
the allocated `cached_chunks`. Thus, we need to keep the proper count
at the end of the shutdown.
Closes GH-7745.
2021-12-10 12:24:06 +01:00
Dmitry Stogov
363434bab2
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix incorrect JMP optimization
2021-12-10 01:44:55 +03:00
Dmitry Stogov
7e080183f4
Fix crush after compilation of nullsafe operator introduced in 307e476e86
...
Now we flush only delayed opcodes realted to this nullsafe operator.
Fixes oss-fuzz #42152
2021-12-09 18:15:47 +03:00
Dmitry Stogov
08f1d470fb
Separate "cold" code
2021-12-07 11:46:32 +03:00
Nikita Popov
cf377eefa6
Don't convert assign op operand types in opcache
...
This is the same change as 56b18d478e
but for ASSIGN_OP. Changing the operand type may change the error
message and can result in different behavior with operator overloading.
As with the other patch, if there is strong interest this could be
added to the DFA pass instead, with an appropriate type check.
2021-12-06 21:56:04 +01:00
Dmitry Stogov
572c09d373
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fixed incorrect DCE of a constructor call
2021-12-06 16:00:30 +03:00
Dmitry Stogov
5459ed4c2f
Fix use after free because of data clobbering by user error handler
...
Fixes oss-fuzz #41692
2021-12-06 13:08:27 +03:00
Dmitry Stogov
4ed10f3d47
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix refcount inferemce ($a += $a returns old array with RCN)
2021-12-06 11:31:51 +03:00
Ilija Tovilo
b991ce9c1e
Improve final/abstract methods in interfaces error messages
...
Closes #81683
Closes GH-7722
2021-12-05 23:10:07 +01:00
Nikita Popov
26e424465c
Fix bug #81598 : Use C.UTF-8 as LC_CTYPE locale by default
...
Unfortunately, libedit is locale based and does not accept UTF-8
input when the C locale is used. This patch switches the default
locale to C.UTF-8 instead (if it is available). This makes libedit
work and I believe it shouldn't affect behavior of single-byte
locale-dependent functions that PHP otherwise uses.
Closes GH-7635.
2021-12-05 21:03:27 +01:00
Ilija Tovilo
dab6226cbe
Fix invalid opcode for ??= on $GLOBALS
...
Closes #81684
Closes GH-7717
2021-12-05 18:25:02 +01:00
Dmitry Stogov
307e476e86
Fixed bug #81216 (Nullsafe operator leaks dynamic property name)
...
Fixes oss-fuzz #38542
2021-12-04 18:04:24 +03:00
Dmitry Stogov
e52f57cf6b
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Add test
ws
2021-12-03 13:40:27 +03:00
Dmitry Stogov
8d7d87cdc4
Add test
2021-12-03 13:40:17 +03:00
Dmitry Stogov
731ce6be01
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix array object clobbering by user error handler
2021-12-03 13:36:33 +03:00
Dmitry Stogov
1d054b3fa7
Fix array object clobbering by user error handler
...
Fixes oss-fuss #41605 and #41610
2021-12-03 13:35:28 +03:00
Patrick Allaert
628670c391
Prepare for 8.1.2
2021-12-02 14:20:36 +01:00
Dmitry Stogov
ddcfffad2c
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix yet another indirect string modification by error handler problem
2021-12-02 16:17:26 +03:00
Dmitry Stogov
94286cd596
Fix yet another indirect string modification by error handler problem
2021-12-02 16:16:54 +03:00
Dmitry Stogov
b9ff359a99
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Add missing zend_string_release_ex(tmp, 0) and cleanup
2021-12-02 11:21:04 +03:00
Dmitry Stogov
37ac707cac
Add missing zend_string_release_ex(tmp, 0) and cleanup
...
- use GC_DELREF() instead of zend_string_release_ex()
- add expectations for exceptional cases
- replace IS_ARRAY_IMMUTABLE by IS_STR_INTERNED
2021-12-02 11:18:08 +03:00
Dmitry Stogov
4eaba3e2ed
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fixed ext/bz2/tests/005.phpt test failure introduesed by 09547c64c2
2021-12-02 10:34:14 +03:00
Dmitry Stogov
df16da3697
Fixed ext/bz2/tests/005.phpt test failure introduesed by 09547c64c2
2021-12-02 10:32:45 +03:00
Sara Golemon
999c6f2c5d
Bump for 8.0.15
2021-12-02 05:09:07 +00:00
Dmitry Stogov
e833e5cfa0
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix clobering of operand by error handler in assignment to string offset (optimization and JIT support)
2021-12-02 01:20:48 +03:00
Dmitry Stogov
4595a57e99
Fix clobering of operand by error handler in assignment to string offset (optimization and JIT support)
2021-12-02 01:20:17 +03:00
Dmitry Stogov
9786eac9a3
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix clobering of operand by error handler in assignment to string offset
2021-12-02 00:46:27 +03:00
Dmitry Stogov
09547c64c2
Fix clobering of operand by error handler in assignment to string offset
...
In some cases new code requires two reallocations insead of one.
Fixes oss-fuzz #31716 , #36196 , #39739 and #40002
2021-12-02 00:24:05 +03:00
Dmitry Stogov
10cfe9f13b
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Use proper functions
2021-12-01 22:45:15 +03:00
Dmitry Stogov
9f6ab78610
Use proper functions
2021-12-01 22:43:19 +03:00
Dmitry Stogov
c3766c08f4
Fix SCDF cleanup of unused basic block, kept only because of FREE of a loop var
...
Fixes oss-fuzz #41516
2021-12-01 18:03:08 +03:00
Dmitry Stogov
b594a95a2f
Fixed crash in ZEND_ASSIGN_DIM_OP because of array cloberring by user error handler
...
Fixes oss-fuzz #36214
2021-11-30 23:33:34 +03:00
Dmitry Stogov
afd881718e
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix crash after indirect modification of string by user error handler
2021-11-30 16:09:58 +03:00
Dmitry Stogov
df434f056f
Fix crash after indirect modification of string by user error handler
...
Fixes oss-fuzz #39346
2021-11-30 16:07:38 +03:00
Dmitry Stogov
3564001502
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
JIT: Fix incorrect reference counting inference
2021-11-30 13:00:04 +03:00
Dmitry Stogov
2d3ea98624
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fixed type inference (it's safe to ignore reference counting narrowing)
2021-11-29 23:39:37 +03:00