Christoph M. Becker
60717fcd34
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix #74604 : Out of bounds in php_pcre_replace_impl
2021-11-29 19:17:16 +01:00
Christoph M. Becker
816aa20391
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #74604 : Out of bounds in php_pcre_replace_impl
2021-11-29 19:15:20 +01:00
Christoph M. Becker
712fc54e85
Fix #74604 : Out of bounds in php_pcre_replace_impl
...
Trying to allocate a `zend_string` with a length only slighty smaller
than `SIZE_MAX` causes an integer overflow; we make sure that this
doesn't happen by catering to the maximal overhead of a `zend_string`.
Closes GH-7597.
2021-11-29 19:12:55 +01:00
Dmitry Stogov
b914122389
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
JIT: Fix named arguments handling
JIT: Fix named arguments handling
2021-11-29 18:43:24 +03:00
Dmitry Stogov
d955415114
JIT: Fix named arguments handling
...
Fixes oss-fuzz #41486
2021-11-29 18:39:50 +03:00
Dmitry Stogov
8f4cfe04eb
JIT: Fix named arguments handling
...
Fixes oss-fuzz #41486
2021-11-29 18:37:49 +03:00
Christoph M. Becker
b0823438a9
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix #81659 : stream_get_contents() may unnecessarily overallocate
2021-11-29 14:50:19 +01:00
Christoph M. Becker
f3bd24a200
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #81659 : stream_get_contents() may unnecessarily overallocate
2021-11-29 14:48:11 +01:00
Christoph M. Becker
31749aac62
Fix #81659 : stream_get_contents() may unnecessarily overallocate
...
Since we're going to read from the current stream position anyway, the
`max_len` should be the size of the file minus the current position
(still catering to potentially filtered streams). We must, however,
make sure to cater to the file position being beyond the actual file
size.
While we're at, we also fix the step size in the comment, which is 8K.
A further optimization could be done for unfiltered streams, thus
saving that step size, but 8K might not be worth it.
Closes GH-7693.
2021-11-29 14:46:09 +01:00
Dmitry Stogov
c6e895aec2
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Disable type narrowing optimization when we contruct SSA for JIT
2021-11-29 15:53:16 +03:00
Dmitry Stogov
297117bbc5
Disable type narrowing optimization when we contruct SSA for JIT
...
This also revets incorrect fix introduced in f9518c3850
2021-11-29 15:51:54 +03:00
Alex Dowad
1a2c608053
Add unit tests for mb_detect_encoding on Polish text
2021-11-26 17:42:53 +02:00
Dmitry Stogov
442304485e
Fixed test (added 8.1 deprecation)
2021-11-25 22:40:26 +03:00
Dmitry Stogov
971354caac
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
JIT: Fixed use-after-free caused by shift by negative number
2021-11-25 22:24:15 +03:00
Dmitry Stogov
49f44e7ffc
JIT: Fixed use-after-free caused by shift by negative number
...
Fixes oss-fuzz #41192
2021-11-25 22:21:44 +03:00
Christoph M. Becker
6008a75f39
Update to PCRE2 10.39
...
We also apply an respective upstream fix[1].
[1] <d144199dfb >
Closes GH-7678.
2021-11-25 18:38:31 +01:00
Christoph M. Becker
df5e95b4d1
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix #81649 : imap_(un)delete accept sequences, not single numbers
2021-11-25 18:31:14 +01:00
Christoph M. Becker
179030d167
Fix #81649 : imap_(un)delete accept sequences, not single numbers
...
As such, the parameter name `$message_num` is utmost misleading; it
should be `$message_nums` as for other functions.
Closes GH-7686.
2021-11-25 18:29:43 +01:00
Remi Collet
54f1f8cf2a
add missing conditions
2021-11-25 13:20:27 +01:00
Remi Collet
f566cba0bb
fix [-Wstrict-prototypes] build warnings in ext/gd
2021-11-25 13:17:07 +01:00
Dmitry Stogov
b1a1ed380f
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fixed incorrect narrowing to double
2021-11-25 15:15:01 +03:00
Dmitry Stogov
f9518c3850
Fixed incorrect narrowing to double
...
Fixes oss-fuzz #41223
2021-11-25 15:14:04 +03:00
Dmitry Stogov
ecc4d1326b
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fixed incorrect refcountion inference for BW_NOT
2021-11-25 13:53:26 +03:00
Dmitry Stogov
3c53a9fd73
Fixed incorrect refcountion inference for BW_NOT
...
BW_NOT for emtpy string returns empty string
Fixes oss-fuzz #41280
2021-11-25 13:51:56 +03:00
Dmitry Stogov
97f0c0b189
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fixed incorrect DCE for ADD_ARRAY_ELEMENT instruction
2021-11-25 13:35:54 +03:00
Dmitry Stogov
f302430c72
Fixed incorrect DCE for ADD_ARRAY_ELEMENT instruction
...
DCE might remove INIT_ARRAY instruction but then keep the related
ADD_ARRAY_ELEMENT, becuse its both operands need to be freed.
Fixes oss-fuzz #41309
2021-11-25 13:33:26 +03:00
Remi Collet
96a0ff73e9
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
add missing cond.
2021-11-25 10:16:17 +01:00
Remi Collet
f6621037a0
add missing cond.
2021-11-25 10:14:30 +01:00
Alex Dowad
d573054ebe
Enable encoding detection for Polish text
...
Previously, some accented letters commonly used to write Polish text
were counted as 'rare' codepoints. Treat them as 'common' instead.
Thanks to Alec for pointing this out.
2021-11-25 11:10:47 +02:00
Remi Collet
80d63e9d17
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
fix gdImagePngCtxEx call with system libgd
2021-11-25 08:27:28 +01:00
Remi Collet
e713890d36
fix gdImagePngCtxEx call with system libgd
2021-11-25 08:27:07 +01:00
Christoph M. Becker
a2c0ffb54e
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
"Export" relevant GD macros
2021-11-24 18:25:21 +01:00
Christoph M. Becker
9237055141
"Export" relevant GD macros
...
For parity with non Windows systems, we should `AC_DEFINE` these macros
so that they are defined in config.w32.h instead of directly passed to
the compiler. This allows extensions which have ext/gd as dependency
to check for these macros. E.g. ext/ps does this[1], and fails to
build on Windows, because `HAVE_GD_BUNDLED` isn't defined.
[1] <https://github.com/steinm/ps/blob/RELEASE_1_4_4/ps.c#L34 >
Closes GH-7680.
2021-11-24 18:23:28 +01:00
Nikita Popov
be271f277e
Fix bug #81652
...
We need to check not only for defs but also for uses of the
variable.
2021-11-24 15:18:31 +01:00
Remi Collet
ef2fd0e5b5
fix [-Wstrict-prototypes] buid warnings
2021-11-24 14:55:11 +01:00
Christoph M. Becker
b29e85a0da
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #75725 : ./configure: detecting RAND_egd
2021-11-22 14:13:52 +01:00
Дилян Палаузов
60fe575ce3
Fix #75725 : ./configure: detecting RAND_egd
...
Closes GH-7668.
2021-11-22 14:11:07 +01:00
Derick Rethans
e4679ef0c2
Fixed date/diff where the difference in hour is less than 1
2021-11-18 13:55:51 +00:00
Dmitry Stogov
5ab2749263
Fixed a crash becaeuse of race condition in inheritance cache
...
zend_inheritance_cache_entry.[num_]warnings must be updated before this entry is made visible to other processes
2021-11-18 14:17:36 +03:00
Nikita Popov
17ceed9ae7
Implement __serialize() and __unserialize() on GMP
...
GMP directly implements internal serialize/unserialize handlers
rather than going through the Serializable interface, so it ended
up being missed when adding the new __serialize()/__unserialize()
methods to other classes.
The serialization format is similar to before, but uses hex instead
of decimal encoding and omits the members if not used (which should
be almost always).
2021-11-18 11:11:52 +01:00
Nikita Popov
3ec55d6cbf
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Clarify that preg_match_all() cannot return null
2021-11-18 10:37:18 +01:00
Nikita Popov
bc6ec0a109
Clarify that preg_match_all() cannot return null
2021-11-18 10:36:35 +01:00
Dmitry Stogov
8965d6b2ab
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
JIT: Fixed memory leak in Zend/tests/concat_002.phpt introduced by fac78ee760
2021-11-17 18:44:34 +03:00
Dmitry Stogov
9dd3e8be8a
JIT: Fixed memory leak in Zend/tests/concat_002.phpt introduced by fac78ee760
2021-11-17 18:43:39 +03:00
Dmitry Stogov
76548e5093
Fixed bug #81607 (CE_CACHE allocation with concurrent access)
2021-11-17 18:23:36 +03:00
Nikita Popov
6641e3b8f4
Fix bug #81630 : Don't claim known hash in getTraitAliases()
...
We don't intern this string, and this code is not particularly
performance critical in the first place, so just drop the the
assumption.
2021-11-17 15:54:42 +01:00
Dmitry Stogov
61b432ca24
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
JIT: Fixed memory leak
2021-11-17 14:02:01 +03:00
Dmitry Stogov
fac78ee760
JIT: Fixed memory leak
2021-11-17 13:59:35 +03:00
Máté Kocsis
20fb26e55c
Add more specific array return type hints for various extensions - part 2
...
ext/ftp, ext/gmp, ext/intl
Closes GH-7433
2021-11-17 10:56:27 +01:00
Dmitry Stogov
42ccf9354a
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
JIT: Fixed memory lieak
2021-11-17 12:51:23 +03:00