Christoph M. Becker
ead40e31e9
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix #78202 : Opcache stats for cache hits are capped at 32bit NUM
2019-06-25 13:06:20 +02:00
Christoph M. Becker
18bba63f39
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fix #78202 : Opcache stats for cache hits are capped at 32bit NUM
2019-06-25 13:04:28 +02:00
Christoph M. Becker
4366f22dfc
Fix #78202 : Opcache stats for cache hits are capped at 32bit NUM
...
We use the proper format specifiers now.
2019-06-25 13:00:28 +02:00
Dmitry Stogov
759f4ecd8b
Keep lowercased parent class name as second argument of DECLARE_CLASS to avoid extra work at run-time
2019-06-25 11:30:58 +03:00
Dmitry Stogov
0f29fb5cd8
Fixed bug 78175 (Preloading must store default values of static variables and properties)
2019-06-24 20:32:27 +03:00
Nikita Popov
8227e0f747
Avoid ub in shift overflow check
...
Also fix an off-by-one error. While 1 << 63 overflows, -1 << 63 does
not.
2019-06-21 10:24:27 +02:00
Christoph M. Becker
2b4fc9eb9c
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix #78189 : file cache strips last character of uname hash
2019-06-20 18:01:02 +02:00
Christoph M. Becker
a85254b898
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fix #78189 : file cache strips last character of uname hash
2019-06-20 17:59:59 +02:00
Christoph M. Becker
fcd6f2de60
Fix #78189 : file cache strips last character of uname hash
...
We must not forget to increase `len` by one to cater to the directory
separator.
2019-06-20 17:58:32 +02:00
Christoph M. Becker
ecae9100dc
Rename test file to reflect the appropriate ticket number
2019-06-20 16:54:17 +02:00
Remi Collet
961935fde2
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
fix test for Windows and for parallel run
2019-06-20 11:59:04 +02:00
Remi Collet
676b564f43
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
fix test for Windows and for parallel run
2019-06-20 11:58:49 +02:00
Remi Collet
d8202bf917
fix test for Windows and for parallel run
2019-06-20 11:58:32 +02:00
Remi Collet
522cf62906
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
improve test clean section
move NEWS entry
2019-06-20 11:52:25 +02:00
Remi Collet
d7597f73cc
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
improve test clean section
2019-06-20 11:51:51 +02:00
Remi Collet
b3cfeda3c7
improve test clean section
2019-06-20 11:51:18 +02:00
Nikita Popov
e162a1c02e
Fix maybe uninit warning
2019-06-20 10:35:22 +02:00
Remi Collet
fa70aedf03
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
add test for #78185
2019-06-20 10:28:26 +02:00
Remi Collet
a197dc72c3
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
add test for #78185
2019-06-20 10:28:00 +02:00
Remi Collet
63f2d88088
add test for #78185
2019-06-20 10:27:33 +02:00
Nikita Popov
117c7b3f65
Avoid overflow in mul range calculation
...
By using ZEND_SIGNED_MULTIPLY_LONG, which already implemented
efficient overflow checking logic.
2019-06-20 09:57:55 +02:00
Nikita Popov
3a97b8b4f9
Backport "Avoid UB in overflow checks"
...
Cherry-pick of bb940d9969
without
the JIT parts.
2019-06-20 09:51:05 +02:00
Nikita Popov
ccfe6c862a
Avoid memset/memcpy null ub in block pass
...
The arena allocator has no problem with zero-size allocations (and
will just return the same pointer for each in this case), so just
do that to avoid null pointers.
2019-06-20 09:49:07 +02:00
Dmitry Stogov
05c8f1ff2e
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fixed bug #78185 (File cache no longer works)
2019-06-20 09:07:39 +03:00
Dmitry Stogov
35acda856a
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fixed bug #78185 (File cache no longer works)
2019-06-20 09:05:50 +03:00
Dmitry Stogov
cd6a6e4cf2
Fixed bug #78185 (File cache no longer works)
2019-06-20 09:04:14 +03:00
Dmitry Stogov
148eb20226
Fixed bug #78175 (Preloading segfaults at preload time and at runtime)
2019-06-18 17:18:49 +03:00
Christoph M. Becker
04a6aac59b
Turn system_id into a true global
...
The system_id is identical for all threads and can be computed during
module startup, so there is no need to calculate and store it for each
thread.
2019-06-18 10:27:35 +02:00
Dmitry Stogov
96a6f7f7f5
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Backport 96a12578c1
2019-06-14 13:29:30 +03:00
Dmitry Stogov
28808ca96d
Backport 96a12578c1
2019-06-14 13:29:13 +03:00
Dmitry Stogov
a5b39abd86
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Backport 91a6cdbff5
2019-06-14 13:25:06 +03:00
Dmitry Stogov
40f463b560
Backport 91a6cdbff5
2019-06-14 13:24:47 +03:00
Dmitry Stogov
96a12578c1
More edge case fixes that may cause bug #78106
2019-06-14 13:10:02 +03:00
Dmitry Stogov
91a6cdbff5
Attempt to fix edge conditions that may cause bug #78106
2019-06-14 12:47:22 +03:00
Nikita Popov
e5be58f57c
Merge branch 'PHP-7.3' into PHP-7.4
2019-06-13 12:54:10 +02:00
Nikita Popov
bada2049ca
Merge branch 'PHP-7.2' into PHP-7.3
2019-06-13 12:52:32 +02:00
Nikita Popov
f1a8138055
Fixed bug #78106
...
When disabling opcache during the request via opcache.enable ini
setting, make sure we also disable ZCG(accelerator_enabled).
2019-06-13 12:51:35 +02:00
Nikita Popov
da275e6214
Merge branch 'PHP-7.3' into PHP-7.4
2019-06-13 12:41:01 +02:00
Nikita Popov
ee137a7033
Merge branch 'PHP-7.2' into PHP-7.3
2019-06-13 12:38:57 +02:00
Nikita Popov
f8a68fd935
Add test for bug #78106
...
Also add PHP_TEST_EXTRA_ARGS environment variable, which allows
to pass on -c, -d etc flags provided by run-tests.php. Otherwise
we won't get the built-in server to run with opcache.
2019-06-13 12:35:29 +02:00
Nikita Popov
83e0bfb50c
Merge branch 'PHP-7.3' into PHP-7.4
2019-06-11 15:41:05 +02:00
Tyson Andre
5d3e3a62a2
Be more precise about possible types for mysqli methods
...
mysqli has an uncommon approach to 64-bit compatibility:
it will convert numbers that can't be represented on 32-bit
platforms to a string.
This is documented at
https://www.php.net/manual/en/mysqli-stmt.affected-rows.php#refsect1-mysqli-stmt.affected-rows-returnvalues
So if there's a query to a remote mysqli server that affects
more than 2.2 billion rows, then the opcache inference might be
incorrect.
(It's possible to add a MAY_BE_STRING_ON_32_BIT_PLATFORM bitflag macro to
account for this, but I don't think there's a need or want to?)
Patches 3162285b86
This is based on the list of php 7.4 functions using
MYSQLI_RETURN_LONG_INT in mysqli_api.c
2019-06-11 15:40:33 +02:00
Tyson Andre
07c63c6fdf
Fix opcache signatures for mysqli_stat
...
See mysqli_api.c and https://www.php.net/manual/en/mysqli.stat.php
2019-06-11 15:39:59 +02:00
Tyson Andre
7350e808c5
Fix bug in opcache flags for mysqli_get_charset
...
https://www.php.net/manual/en/mysqli.get-charset.php
tests/mysqli_field_seek.phpt has a test of this returning an object.
Looking at the source in ext/mysqli/mysqli_nonapi.c,
this should be object|null, not array|null
This might actually cause bugs in opcache's inferences,
(no proof of this)
so it might make sense to pull this patch into an earlier minor version.
2019-06-11 15:39:59 +02:00
Nikita Popov
89b2d88659
Register class before fetching parent
...
We want the class declaration to be available while compiling the
parent class.
2019-06-11 13:09:33 +02:00
Nikita Popov
eecd8961d9
Add get_mangled_object_vars() function
2019-06-11 10:28:29 +02:00
Tyson Andre
5c8b702e77
Fix typo in opcache function flag info (mage->image)
...
ext/gd/gd.c seems to return null for wrong parameter count, false for
error, and long otherwise. See https://php.net/imagecolorallocate
In php 8.0, the MAY_BE_NULL can probably be removed.
2019-06-11 09:08:23 +02:00
Tyson Andre
b921564a35
Clean up opcache func flags for set_socket_blocking
...
It was removed in php 7.0. See https://php.net/set_socket_blocking
2019-06-11 09:05:57 +02:00
Tyson Andre
98b487e244
Fix a typo in opcache func info for "get_parrent_class"
...
This should only have one r.
http://php.net/get_parent_class mentions that it returns string|false
Also, I'm not 100% sure if this is right - should this include
MAY_BE_NULL to handle the case of too many parameters?
(then again, get_called_class() also returns null in the global scope)
```
php > var_export(get_parent_class(2,3));
Warning: get_parent_class() expects at most 1 parameter, 2 given in php
shell code on line 1
NULL
```
2019-06-11 08:59:12 +02:00
Dmitry Stogov
46df9a858c
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fixed possible misalignment in 32-bit build.
2019-06-10 12:53:04 +03:00