Stanislav Malyshev
39bf35ca87
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix libmagic buffer overflow issue (CVE-2019-18218)
bump version
set versions for release
2019-10-28 20:47:57 -07:00
Stanislav Malyshev
53b1d76144
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix libmagic buffer overflow issue (CVE-2019-18218)
bump version
set versions for release
2019-10-28 20:47:50 -07:00
Stanislav Malyshev
8c2b3b0568
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fix libmagic buffer overflow issue (CVE-2019-18218)
bump version
set versions for release
2019-10-28 20:47:44 -07:00
Stanislav Malyshev
2bdb13a1f7
Merge branch 'PHP-7.1' into PHP-7.2
...
* PHP-7.1:
Fix libmagic buffer overflow issue (CVE-2019-18218)
bump version
set versions for release
2019-10-28 20:47:30 -07:00
Christoph M. Becker
c2f56d0546
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add support for Interbase 1 dialect
2019-10-28 16:41:16 +01:00
Simonov Denis
3fb42a382c
Add support for Interbase 1 dialect
2019-10-28 16:40:51 +01:00
Christoph M. Becker
b897d19552
Add missing zend_parse_parameters_none()
...
We fix the trivial cases; some others need further discussion, see
<https://news-web.php.net/php.internals/107723 >.
2019-10-28 16:18:15 +01:00
Nikita Popov
87fefd165a
Remove ability to unbind $this of closures if used
...
This was deprecated in PHP 7.4, removing it for PHP 8.0.
2019-10-28 13:24:07 +01:00
Fabien Villepinte
26579db403
Define IS_WINDOWS in the test runner
...
Avoid code duplication
Closes GH-4866.
2019-10-28 13:14:50 +01:00
Christoph M. Becker
f9a98f6dbd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78751 : Serialising DatePeriod converts DateTimeImmutable
2019-10-28 13:09:44 +01:00
Christoph M. Becker
9e4c5db733
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix #78751 : Serialising DatePeriod converts DateTimeImmutable
2019-10-28 13:09:24 +01:00
Christoph M. Becker
736cd93ef5
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fix #78751 : Serialising DatePeriod converts DateTimeImmutable
2019-10-28 13:08:34 +01:00
Christoph M. Becker
89c327f884
Fix #78751 : Serialising DatePeriod converts DateTimeImmutable
...
When getting the properties of a DatePeriod instance we have to retain
the proper classes, and when restoring a DatePeriod instance we have to
cater to DateTimeImmutable instances as well.
2019-10-28 13:07:28 +01:00
Christoph M. Becker
84f2a984d4
Elevate warnings to Error Exceptions in ext/bcmath
...
`bcdiv()` and `bcmod()` throw DivisionByZeroError if the divisor is 0,
which matches the behavior of the `/` and `%` operators, and `bcsqrt()`
throws ValueError for negative operands.
2019-10-28 12:22:31 +01:00
kharhamel
82dc9a31c3
Convert warnings to Errors in sprintf() functions
...
Closes GH-4837.
2019-10-28 11:58:59 +01:00
Tyson Andre
9d48bf5152
Fix miscellaneous typos in docs and error messages
...
Closes GH-4863.
2019-10-28 11:44:08 +01:00
Nikita Popov
742aaaa150
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove redundant variable rv and optimize code
2019-10-28 11:42:57 +01:00
ZiMuyang
99c84cd92a
Remove redundant variable rv and optimize code
...
Closes GH-4864.
2019-10-28 11:42:45 +01:00
Tyson Andre
e7ff590d0d
Optimize array_slice for packed arrays with large offsets
...
If the offset is 100000, and there are no gaps in the packed/unpacked array,
then advance the pointer once by 100000,
instead of looping and skipping 100000 times.
Add a new test of array_slice handling unset offsets.
Closes GH-4860.
2019-10-28 11:30:59 +01:00
Nikita Popov
9f98fddb7b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #78752
2019-10-28 10:28:24 +01:00
Nikita Popov
1ddda13d84
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix bug #78752
2019-10-28 10:28:14 +01:00
Nikita Popov
b61b60d15b
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fix bug #78752
2019-10-28 10:28:04 +01:00
Nikita Popov
16c4910876
Fix bug #78752
...
NULL out the execute_data before destroying it, otherwise GC may
trigger while the execute_data is partially destroyed, resulting
in double-frees.
The handling of call stack unfreezing is a bit awkward because it's
a ZEND_API function, so we can't change the signature.
2019-10-28 10:27:32 +01:00
Stanislav Malyshev
469820048d
Fix libmagic buffer overflow issue (CVE-2019-18218)
...
Ported from 46a8443f76
2019-10-27 16:30:38 -07:00
Christoph M. Becker
addc78f379
Revert "Add missing zend_parse_parameters_none()"
...
This reverts commit ef439ec895 .
Test failures need to be resolved first.
2019-10-27 13:41:41 +01:00
Christoph M. Becker
ef439ec895
Add missing zend_parse_parameters_none()
2019-10-27 13:12:45 +01:00
Nikita Popov
0040b2a958
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Try one more FD in ext/standard/tests/file/php_fd_wrapper_04.phpt
2019-10-27 09:36:44 +01:00
Nikita Popov
43dc7da8e3
Try one more FD in ext/standard/tests/file/php_fd_wrapper_04.phpt
...
For some reason FD 120 seems to exist on macos quite often, while
FD 12 did not... Let's try an even larger number, otherwise we
should just drop this test.
2019-10-27 09:35:57 +01:00
Christoph M. Becker
913a449b27
Remove generic type annotations
...
Cf. <de69a9d3eb (r35675846) >.
2019-10-26 16:24:53 +02:00
Christoph M. Becker
b823864926
Fix and make reflection arginfo stubs more specific
2019-10-26 16:17:02 +02:00
Fabien Villepinte
8a88f72beb
Merge branch 'PHP-7.4'
2019-10-26 16:08:00 +02:00
Fabien Villepinte
601aef3468
Replace EXPECTF by EXPECT
...
In ext/dom all the tests with a EXPECTF section
starting by "Fatal error: Uncaught" have been updated
to use the faster EXPECT
2019-10-26 16:05:02 +02:00
Christoph M. Becker
de69a9d3eb
Improve reflection arginfo stubs
2019-10-26 12:32:12 +02:00
Thomas Gerbet
c9fc076a75
Add stubs for ext-reflection
2019-10-26 12:32:12 +02:00
Nikita Popov
75279b50a5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add ARM64 CI to Travis
2019-10-25 16:38:13 +02:00
Nikita Popov
bd379df48c
Add ARM64 CI to Travis
...
We need to install a number of additional packages that are installed
by default on the AMD64 workers.
We also have to manually set up the MySQL user.
For now we don't set up Postgres -- if anyone wants to figure that
out, it would be great ;)
Log redirections in compile.sh are removed, because /dev/stdout is
not accessible. We don't see to use this anyway.
2019-10-25 16:37:46 +02:00
Nikita Popov
e63a44dd03
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #78226 : Don't call __set() on uninitialized typed properties
2019-10-25 16:32:14 +02:00
Nikita Popov
f1848a4b3f
Fix bug #78226 : Don't call __set() on uninitialized typed properties
...
Assigning to an uninitialized typed property will no longer trigger
a call to __set(). However, calls to __set() are still triggered if
the property is explicitly unset().
This gives us both the behavior people generally expect, and still
allows ORMs to do lazy initialization by unsetting properties.
For PHP 8, we should fine a way to forbid unsetting of declared
properties entirely, and provide a different way to achieve lazy
initialization.
2019-10-25 16:31:45 +02:00
Nikita Popov
7d056fc6c0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78747
2019-10-25 12:53:24 +02:00
Nikita Popov
4d8541debb
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fixed bug #78747
2019-10-25 12:50:26 +02:00
Nikita Popov
74699533e5
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fixed bug #78747
2019-10-25 12:50:12 +02:00
Nikita Popov
5249993814
Fixed bug #78747
2019-10-25 12:47:18 +02:00
Nikita Popov
225a02f3d6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Optimize VERIFY_RETURN_TYPE for TMP operands as well
2019-10-25 11:41:41 +02:00
Nikita Popov
6aece7be0a
Optimize VERIFY_RETURN_TYPE for TMP operands as well
...
Only exclude CONST operands, which use a different instruction
format (they have a return operand).
2019-10-25 11:37:19 +02:00
Nikita Popov
711e2a1216
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Check class linking in VERIFY_RETURN_TYPE optimization
Simplify travis setup scripts
2019-10-25 11:25:49 +02:00
Nikita Popov
f07565b0eb
Check class linking in VERIFY_RETURN_TYPE optimization
...
instanceof_function() requires linked classes. I'm not reusing
unlinked_instanceof() here, because it performs class loading,
which wouldn't be right here, I think.
2019-10-25 11:24:32 +02:00
Nikita Popov
a8b4e40fa2
Simplify travis setup scripts
...
Reduce duplication.
2019-10-25 11:15:27 +02:00
Nikita Popov
c858d17f06
Optimize instanceof_function
...
Split out the simple equality check into an inline function --
this is one of the common cases.
Replace instanceof_function_ex with zend_class_implements_interface.
There are a few more places where it may be used.
2019-10-25 10:51:17 +02:00
Nikita Popov
bd7b1afd6e
Check type is set when verifying variadic args
...
Weird that there was no test for this...
This code is somewhat inefficient, because it will be performed
for every arg, rather than only once.
2019-10-25 10:27:45 +02:00
Nikita Popov
296269cfe8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove recursive check from instanceof_interface
2019-10-25 10:20:19 +02:00