]> granicus.if.org Git - php/log
php
5 years agoMake test more robust
Christoph M. Becker [Mon, 4 Nov 2019 11:16:05 +0000 (12:16 +0100)]
Make test more robust

Time flies, so obviously the reported uptime may differ a bit (as
already occasionally noticed on CI); we cater to that by allowing a
delay of up to one second.

5 years agoRevert "Remove configure checks for supported instruction sets"
Nikita Popov [Mon, 4 Nov 2019 10:32:46 +0000 (11:32 +0100)]
Revert "Remove configure checks for supported instruction sets"

This reverts commit edccf32f7f36a8bc759b9482737e0c3efcb3a005.

This was reported to cause issues for as yet unknown reasons in
bug #78769. As this was intended as code cleanup, revert this from
7.4 at least. May reapply it to master later.

5 years agoFixed bug #78774
Nikita Popov [Mon, 4 Nov 2019 10:01:56 +0000 (11:01 +0100)]
Fixed bug #78774

The string held by the zend_type may be released if the property
type gets resolved to a CE. I initially wanted to fix this by
storing a zend_type* instead (so the property type resolution
propagates to the ReflectionType), but decided against this in
light of upcoming union types support, where we also need to
represent parts of the union, and will not have a single zend_type*
we can reference.

5 years agoPrint Client Library Version in phpinfo
Simonov Denis [Thu, 31 Oct 2019 17:40:15 +0000 (18:40 +0100)]
Print Client Library Version in phpinfo

5 years agoExplicitly specify ubuntu versions on azure pipelines
Nikita Popov [Sat, 2 Nov 2019 09:12:03 +0000 (10:12 +0100)]
Explicitly specify ubuntu versions on azure pipelines

Use the new 18.04 for the ones where the build succeeded and the
previous 16.04 where it didn't.

5 years agoFixed bug #78768
Nikita Popov [Fri, 1 Nov 2019 16:04:15 +0000 (17:04 +0100)]
Fixed bug #78768

Remove the typedef from zend_types.h, use explicit struct prefix
instead.

5 years agoFix conflicts between tests with obscure filenames
Fabien Villepinte [Fri, 1 Nov 2019 11:33:36 +0000 (12:33 +0100)]
Fix conflicts between tests with obscure filenames

For non-windows tests

5 years agoFix conflicts between tests with obscure filenames
Fabien Villepinte [Fri, 1 Nov 2019 11:24:38 +0000 (12:24 +0100)]
Fix conflicts between tests with obscure filenames

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Thu, 31 Oct 2019 15:09:38 +0000 (16:09 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix test cases for libxml2 2.9.10

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Christoph M. Becker [Thu, 31 Oct 2019 15:08:38 +0000 (16:08 +0100)]
Merge branch 'PHP-7.2' into PHP-7.3

* PHP-7.2:
  Fix test cases for libxml2 2.9.10

5 years agoFix test cases for libxml2 2.9.10
Christoph M. Becker [Thu, 31 Oct 2019 15:02:05 +0000 (16:02 +0100)]
Fix test cases for libxml2 2.9.10

Since the error reporting has been slightly changed, we have to adapt
the two affected test cases.

5 years agoRemove configure checks for supported instruction sets
Nikita Popov [Thu, 31 Oct 2019 10:27:53 +0000 (11:27 +0100)]
Remove configure checks for supported instruction sets

These were checking whether the instruction set is supported by
the host CPU, however they were only used to condition on whether
this instruction set is targeted at all. It would still use dynamic
dispatch (e.g. based on ifunc resolvers) to select the actual
implementation. Whether the target is guaranteed to support the
instruction set without dispatch is determined based on pre-defined
macros like __SSE2__.

This removes the configure-time builtin cpu checks to remove
confusion. Additionally this allows targeting an architecture that
is newer than the host architecture.

5 years agoFix bug #77930: Remove mmap limit
Nikita Popov [Wed, 30 Oct 2019 12:15:05 +0000 (13:15 +0100)]
Fix bug #77930: Remove mmap limit

First, the limitation already doesn't trigger if you copy the whole
file (i.e. use copy() or stream_copy_to_stream() and don't specify
a length). This happens because length will be 0 at the time of the
check and only later calculated based on the file size. This means
that we're already completely blowing the length limit for what is
likely the most common case, and it doesn't seem like anyone complained
about that.

Second, the premise of the code comment ("to avoid runaway swapping")
seems incorrect to me. Because this performs a file-backed non-private
mmap, no swap backing is needed for the mapping. Concerns over "memory
usage" are also misplaced, as this is a virtual mapping.

5 years agoFix #78761: Zend memory heap corruption with preload and casting
Christoph M. Becker [Wed, 30 Oct 2019 17:05:10 +0000 (18:05 +0100)]
Fix #78761: Zend memory heap corruption with preload and casting

We have to reset `FFI_G(persistent)` back to zero when preloading has
finished.

5 years agoFix #78762: Failing FFI::cast() may leak memory
Christoph M. Becker [Wed, 30 Oct 2019 16:16:56 +0000 (17:16 +0100)]
Fix #78762: Failing FFI::cast() may leak memory

We have to release objects when we're done with them.

5 years agoAdd UPGRADING note for stream_read() change
Nikita Popov [Wed, 30 Oct 2019 10:31:28 +0000 (11:31 +0100)]
Add UPGRADING note for stream_read() change

Ref bug #78575.

[ci skip]

5 years agoOptimize creation of empty arrays in json_decode
Tyson Andre [Fri, 25 Oct 2019 23:57:39 +0000 (19:57 -0400)]
Optimize creation of empty arrays in json_decode

Use the shared empty array from ZVAL_EMPTY_ARRAY

For code that created an 10 arrays of 100000 empty arrays
(has the same result with `$assoc=true` and `{}`)

- This is the worst-case comparison, but I'd expect 0-length arrays to be fairly
  common in regular data for json_decode
- The parser implementation was using function pointers so that third party
  extension developers could reuse the json parser for their own
  data structures, etc. (I think).

  This PR is meant to let those third party extensions continue working
  without changes.

Before this patch: In 0.126 seconds: added 97.99 MiB
After this patch:  In 0.096 seconds: added 41.99 MiB

```php
<?php
$json = '[' . str_repeat('[],', 100000) . "null]";
$start_memory = memory_get_usage();
$start_time = microtime(true);
$result = [];
for ($i = 0; $i < 10; $i++) {
    $result[] = json_decode($json);
}
$end_memory = memory_get_usage();
$end_time = microtime(true);
// Before this patch: In 0.126 seconds: added 97.99 MiB
// After this patch:  In 0.096 seconds: added 41.99 MiB
printf("In %.3f seconds: added %.2f MiB\n", $end_time - $start_time, ($end_memory - $start_memory)/1000000);

// For objects
$json = '[' . str_repeat('{},', 100000) . "null]";
$start_memory = memory_get_usage();
$start_time = microtime(true);
for ($i = 0; $i < 10; $i++) {
    $result[] = json_decode($json, true);
}
$end_memory = memory_get_usage();
$end_time = microtime(true);
// Before this patch: In 0.126 seconds: added 97.99 MiB
// After this patch:  In 0.096 seconds: added 41.99 MiB
printf("In %.3f seconds: added %.2f MiB (objects decoded as arrays) \n", $end_time - $start_time, ($end_memory - $start_memory)/1000000);
```

Closes GH-4861.

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Wed, 30 Oct 2019 08:23:06 +0000 (09:23 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Add missing refcount increment

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Wed, 30 Oct 2019 08:22:37 +0000 (09:22 +0100)]
Merge branch 'PHP-7.2' into PHP-7.3

* PHP-7.2:
  Add missing refcount increment

5 years agoAdd missing refcount increment
Nikita Popov [Wed, 30 Oct 2019 08:22:20 +0000 (09:22 +0100)]
Add missing refcount increment

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Tue, 29 Oct 2019 14:07:28 +0000 (15:07 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fixed bug #78689

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Tue, 29 Oct 2019 14:06:28 +0000 (15:06 +0100)]
Merge branch 'PHP-7.2' into PHP-7.3

* PHP-7.2:
  Fixed bug #78689

5 years agoFixed bug #78689
Nikita Popov [Tue, 29 Oct 2019 14:05:59 +0000 (15:05 +0100)]
Fixed bug #78689

5 years agoSkip test case on non Windows platforms
Christoph M. Becker [Tue, 29 Oct 2019 09:05:31 +0000 (10:05 +0100)]
Skip test case on non Windows platforms

5 years agoUpdate NEWS for 7.4.0RC6
Derick Rethans [Tue, 29 Oct 2019 08:50:32 +0000 (08:50 +0000)]
Update NEWS for 7.4.0RC6

5 years agoUpdate NEWS for PHP 7.4.0RC5
Derick Rethans [Tue, 29 Oct 2019 08:49:13 +0000 (08:49 +0000)]
Update NEWS for PHP 7.4.0RC5

5 years agoImplement #78270: Support __vectorcall convention with FFI
Christoph M. Becker [Mon, 14 Oct 2019 12:56:37 +0000 (14:56 +0200)]
Implement #78270: Support __vectorcall convention with FFI

To work around the limitation of the current rudimentary vectorcall
support in our patched libffi, we forbid yet unsupported declarations,
i.e. float/double parameters at certain positions (SIMD vector types
and HVA types are not supported anyway).

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Stanislav Malyshev [Tue, 29 Oct 2019 03:47:50 +0000 (20:47 -0700)]
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

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Stanislav Malyshev [Tue, 29 Oct 2019 03:47:44 +0000 (20:47 -0700)]
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

5 years agoMerge branch 'PHP-7.1' into PHP-7.2
Stanislav Malyshev [Tue, 29 Oct 2019 03:47:30 +0000 (20:47 -0700)]
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

5 years agoAdd support for Interbase 1 dialect
Simonov Denis [Fri, 25 Oct 2019 16:38:01 +0000 (18:38 +0200)]
Add support for Interbase 1 dialect

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Mon, 28 Oct 2019 12:09:11 +0000 (13:09 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #78751: Serialising DatePeriod converts DateTimeImmutable

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Christoph M. Becker [Mon, 28 Oct 2019 12:08:06 +0000 (13:08 +0100)]
Merge branch 'PHP-7.2' into PHP-7.3

* PHP-7.2:
  Fix #78751: Serialising DatePeriod converts DateTimeImmutable

5 years agoFix #78751: Serialising DatePeriod converts DateTimeImmutable
Christoph M. Becker [Fri, 25 Oct 2019 13:43:38 +0000 (15:43 +0200)]
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.

5 years agoRemove redundant variable rv and optimize code
ZiMuyang [Sun, 27 Oct 2019 15:21:31 +0000 (23:21 +0800)]
Remove redundant variable rv and optimize code

Closes GH-4864.

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Mon, 28 Oct 2019 09:28:14 +0000 (10:28 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix bug #78752

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Mon, 28 Oct 2019 09:27:46 +0000 (10:27 +0100)]
Merge branch 'PHP-7.2' into PHP-7.3

* PHP-7.2:
  Fix bug #78752

5 years agoFix bug #78752
Nikita Popov [Mon, 28 Oct 2019 09:23:20 +0000 (10:23 +0100)]
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.

5 years agoFix libmagic buffer overflow issue (CVE-2019-18218)
Stanislav Malyshev [Sun, 27 Oct 2019 23:30:38 +0000 (16:30 -0700)]
Fix libmagic buffer overflow issue (CVE-2019-18218)

Ported from https://github.com/file/file/commit/46a8443f76cec4b41ec736eca396984c74664f84

5 years agoTry one more FD in ext/standard/tests/file/php_fd_wrapper_04.phpt
Nikita Popov [Sun, 27 Oct 2019 08:33:46 +0000 (09:33 +0100)]
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.

5 years agoReplace EXPECTF by EXPECT
Fabien Villepinte [Sat, 26 Oct 2019 14:05:02 +0000 (16:05 +0200)]
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

5 years agoAdd ARM64 CI to Travis
Nikita Popov [Wed, 23 Oct 2019 10:58:21 +0000 (12:58 +0200)]
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.

5 years agoFix bug #78226: Don't call __set() on uninitialized typed properties
Nikita Popov [Thu, 24 Oct 2019 14:36:25 +0000 (16:36 +0200)]
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.

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Fri, 25 Oct 2019 10:50:26 +0000 (12:50 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fixed bug #78747

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Fri, 25 Oct 2019 10:50:12 +0000 (12:50 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3

* PHP-7.2:
  Fixed bug #78747

5 years agoFixed bug #78747
Nikita Popov [Fri, 25 Oct 2019 10:47:18 +0000 (12:47 +0200)]
Fixed bug #78747

5 years agoOptimize VERIFY_RETURN_TYPE for TMP operands as well
Nikita Popov [Fri, 25 Oct 2019 09:37:19 +0000 (11:37 +0200)]
Optimize VERIFY_RETURN_TYPE for TMP operands as well

Only exclude CONST operands, which use a different instruction
format (they have a return operand).

5 years agoCheck class linking in VERIFY_RETURN_TYPE optimization
Nikita Popov [Fri, 25 Oct 2019 09:24:32 +0000 (11:24 +0200)]
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.

5 years agoSimplify travis setup scripts
Nikita Popov [Fri, 25 Oct 2019 09:14:56 +0000 (11:14 +0200)]
Simplify travis setup scripts

Reduce duplication.

5 years agoRemove recursive check from instanceof_interface
Nikita Popov [Thu, 24 Oct 2019 16:11:41 +0000 (18:11 +0200)]
Remove recursive check from instanceof_interface

Parent interfaces are copied into the interface list during
inheritance, so there's no need to perform a recursive check.

Only exception are instanceof checks performed during inheritance
itself. However, we already have unlinked_instanceof for this
purpose, it just needs to be taught to handle this case.

Closes GH-4857.

5 years agoOptimize instanceof_class/interface
Nikita Popov [Thu, 24 Oct 2019 15:47:35 +0000 (17:47 +0200)]
Optimize instanceof_class/interface

instanceof_class does not need to check for a NULL pointer in the
first iteration -- passing NULL to this function is illegal.

instanceof_interface does not need to use instanceof_class(), it
only has to check whether the CEs match exactly. There is no way
for an interface to appear inside "parent", it will always be in
"interfaces" only.

5 years agoClean up and clarify instanceof_function_ex()
Nikita Popov [Thu, 24 Oct 2019 15:40:25 +0000 (17:40 +0200)]
Clean up and clarify instanceof_function_ex()

The instanceof_interface_only() function was dead code (always
returned zero).

Clarify that the last parameter indicates whether the passed CE
is interface or class and rewrite the code in terms of assertions.

5 years agoSkip IntlTimeZone::getOffset() error tests on non-x86
Nikita Popov [Thu, 24 Oct 2019 12:41:05 +0000 (14:41 +0200)]
Skip IntlTimeZone::getOffset() error tests on non-x86

I'm not totally sure, but I have a strong suspicion that the fact
that this produces an error is an artifact of undefined cast behavior
(which will yield INDVAL on x86 but saturate on ARM). INF seems to
be the only value that results in an error even on x86 (variations
like -INF or NAN succeed).

It might make sense to just remove this test entirely, but for now
let's skip it on non-x86.

5 years agoSkip large ftruncate test if large files not supported
Nikita Popov [Thu, 24 Oct 2019 12:32:11 +0000 (14:32 +0200)]
Skip large ftruncate test if large files not supported

5 years agoDon't test "blocks" in lstat_stat_variation7.phpt
Nikita Popov [Thu, 24 Oct 2019 12:26:17 +0000 (14:26 +0200)]
Don't test "blocks" in lstat_stat_variation7.phpt

This stat property seems to be somewhat unreliable depending on the
filesystem. On Travis ARM64 CI a much larger payload is required
to get this value to increase.

5 years agoIncrease FD used in php://fd test
Nikita Popov [Thu, 24 Oct 2019 10:28:43 +0000 (12:28 +0200)]
Increase FD used in php://fd test

5 years agoUse posix_getuid() to check for root in pcntl_setpriority() test
Nikita Popov [Thu, 24 Oct 2019 10:19:24 +0000 (12:19 +0200)]
Use posix_getuid() to check for root in pcntl_setpriority() test

Using SUDO_USER doesn't seem to work on Travis ARM CI -- I guess
that sudo might be in use without the target being root.

5 years agotypo and better wording
Remi Collet [Thu, 24 Oct 2019 05:43:49 +0000 (07:43 +0200)]
typo and better wording

5 years agoAdded suppot for glob() wildcard matching in ffi.preload directive
Dmitry Stogov [Wed, 23 Oct 2019 14:18:11 +0000 (17:18 +0300)]
Added suppot for glob() wildcard matching in ffi.preload directive

5 years agoReverting push to wrong repo
Rasmus Lerdorf [Wed, 23 Oct 2019 21:34:12 +0000 (14:34 -0700)]
Reverting push to wrong repo

5 years agoUpdate alloc patch
Rasmus Lerdorf [Wed, 23 Oct 2019 21:31:27 +0000 (14:31 -0700)]
Update alloc patch

5 years agoIgnore ZEND_FFI_TYPE_OWNED flag
Dmitry Stogov [Wed, 23 Oct 2019 16:50:58 +0000 (19:50 +0300)]
Ignore ZEND_FFI_TYPE_OWNED flag

5 years agoFix aarch64 crc32 implementation
Nikita Popov [Wed, 23 Oct 2019 14:58:47 +0000 (16:58 +0200)]
Fix aarch64 crc32 implementation

RETVAL vs RETURN mixup resulted in the fallback implementation
running as well.

5 years agoDon't autoload when checking property types
Nikita Popov [Wed, 23 Oct 2019 10:19:33 +0000 (12:19 +0200)]
Don't autoload when checking property types

Noticed while working on union types: We do not load argument and
return types during type checks, but we do load property types.

I'm normalizing the behavior towards the existing status quo (not
loading), though we may consider loading everywhere (all types,
and instanceof) in order to properly support class aliases.

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Wed, 23 Oct 2019 09:18:01 +0000 (11:18 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Use ICU's CXXFLAGS when using pkg-config

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Wed, 23 Oct 2019 09:17:46 +0000 (11:17 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3

* PHP-7.2:
  Use ICU's CXXFLAGS when using pkg-config

5 years agoUse ICU's CXXFLAGS when using pkg-config
Ryan Schmidt [Tue, 22 Oct 2019 21:19:35 +0000 (16:19 -0500)]
Use ICU's CXXFLAGS when using pkg-config

This mirrors how ICU's CXXFLAGS are already used when using icu-config.

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Wed, 23 Oct 2019 09:07:41 +0000 (11:07 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Add "-pthread" to EXTRA_LDFLAGS_PROGRAM as well

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Wed, 23 Oct 2019 09:07:16 +0000 (11:07 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3

* PHP-7.2:
  Add "-pthread" to EXTRA_LDFLAGS_PROGRAM as well

5 years agoAdd "-pthread" to EXTRA_LDFLAGS_PROGRAM as well
Nikita Popov [Wed, 23 Oct 2019 09:06:51 +0000 (11:06 +0200)]
Add "-pthread" to EXTRA_LDFLAGS_PROGRAM as well

This is a backport of c518932c0326a938f0fd0254f2adb03b1cddfbca
from the PHP 7.4 branch.

5 years agoAdded missing call to ZipArchive::close()
Florian Engelhardt [Wed, 23 Oct 2019 08:16:07 +0000 (10:16 +0200)]
Added missing call to ZipArchive::close()

5 years agoadd new ffi.preload option in php.ini and display ini entries in MINFO
Remi Collet [Wed, 23 Oct 2019 05:49:13 +0000 (07:49 +0200)]
add new ffi.preload  option in php.ini and display ini entries in MINFO

5 years agobump version
Joe Watkins [Tue, 22 Oct 2019 16:58:39 +0000 (18:58 +0200)]
bump version

5 years agoset versions for release php-7.1.33
Joe Watkins [Tue, 22 Oct 2019 16:56:55 +0000 (18:56 +0200)]
set versions for release

5 years agoFix typo
Christoph M. Becker [Tue, 22 Oct 2019 15:53:34 +0000 (17:53 +0200)]
Fix typo

5 years agoAllow loading FFI bindings through ffi.preload directive
Dmitry Stogov [Tue, 22 Oct 2019 14:52:56 +0000 (17:52 +0300)]
Allow loading FFI bindings through ffi.preload directive

5 years agoFix #78716: Function name mangling is wrong for some parameter types
Christoph M. Becker [Tue, 22 Oct 2019 09:33:00 +0000 (11:33 +0200)]
Fix #78716: Function name mangling is wrong for some parameter types

We have to cater to function parameter alignment when calculating the
parameter size.

5 years agoAdd a run with opcache to the coverage job
Fabien Villepinte [Mon, 21 Oct 2019 19:48:33 +0000 (21:48 +0200)]
Add a run with opcache to the coverage job

Some tests are not run when OPcache is not available.
This should make the results more accurate.

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Tue, 22 Oct 2019 07:51:44 +0000 (09:51 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Update NEWS

5 years agoUpdate NEWS
Christoph M. Becker [Tue, 22 Oct 2019 07:50:11 +0000 (09:50 +0200)]
Update NEWS

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Remi Collet [Tue, 22 Oct 2019 07:38:05 +0000 (09:38 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  add NEWS entry

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Remi Collet [Tue, 22 Oct 2019 07:37:51 +0000 (09:37 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3

* PHP-7.2:
  add NEWS entry

5 years agoadd NEWS entry
Remi Collet [Tue, 22 Oct 2019 07:37:35 +0000 (09:37 +0200)]
add NEWS entry

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Stanislav Malyshev [Mon, 21 Oct 2019 20:17:27 +0000 (13:17 -0700)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix bug #78599 (env_path_info underflow can lead to RCE) (CVE-2019-11043)
  bump versions after release
  set versions for release

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Stanislav Malyshev [Mon, 21 Oct 2019 20:17:19 +0000 (13:17 -0700)]
Merge branch 'PHP-7.2' into PHP-7.3

* PHP-7.2:
  Fix bug #78599 (env_path_info underflow can lead to RCE) (CVE-2019-11043)
  bump versions after release
  set versions for release

5 years agoMerge branch 'PHP-7.1' into PHP-7.2
Stanislav Malyshev [Mon, 21 Oct 2019 20:17:09 +0000 (13:17 -0700)]
Merge branch 'PHP-7.1' into PHP-7.2

* PHP-7.1:
  Fix bug #78599 (env_path_info underflow can lead to RCE) (CVE-2019-11043)
  bump versions after release
  set versions for release

5 years agoRevert "Add tests for ReflectionZendExtension"
Fabien Villepinte [Mon, 21 Oct 2019 19:31:36 +0000 (21:31 +0200)]
Revert "Add tests for ReflectionZendExtension"

This reverts commit 4194e0415b02827b0d5eeff13771eb6642955b0f.

There were already tests for this class.

5 years agoAdd tests for ReflectionZendExtension
Fabien Villepinte [Mon, 21 Oct 2019 19:17:16 +0000 (21:17 +0200)]
Add tests for ReflectionZendExtension

5 years agoFixed bug #78512 (Cannot make preload work)
Dmitry Stogov [Mon, 21 Oct 2019 11:52:26 +0000 (14:52 +0300)]
Fixed bug #78512 (Cannot make preload work)

5 years agoFix static prop cleanup for dl'ed internal classes
Nikita Popov [Mon, 21 Oct 2019 09:30:00 +0000 (11:30 +0200)]
Fix static prop cleanup for dl'ed internal classes

5 years agoFix leak with cycle in static prop of internal class
Nikita Popov [Mon, 21 Oct 2019 08:26:10 +0000 (10:26 +0200)]
Fix leak with cycle in static prop of internal class

More the cleanup of interned classes before the final GC run,
just like it is done for user classes.

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Joe Watkins [Mon, 21 Oct 2019 07:23:44 +0000 (09:23 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix bug #78697: inaccurate error message

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Joe Watkins [Mon, 21 Oct 2019 07:22:32 +0000 (09:22 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3

* PHP-7.2:
  Fix bug #78697: inaccurate error message

5 years agoFix bug #78697: inaccurate error message
Fabien Villepinte [Sat, 19 Oct 2019 19:27:37 +0000 (21:27 +0200)]
Fix bug #78697: inaccurate error message

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Stanislav Malyshev [Mon, 21 Oct 2019 06:20:16 +0000 (23:20 -0700)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #78633: Heap buffer overflow (read) in mb_eregi

5 years agoFix bug #78599 (env_path_info underflow can lead to RCE) (CVE-2019-11043)
Jakub Zelenka [Sat, 12 Oct 2019 14:56:16 +0000 (15:56 +0100)]
Fix bug #78599 (env_path_info underflow can lead to RCE) (CVE-2019-11043)

5 years agoFix #78633: Heap buffer overflow (read) in mb_eregi
Christoph M. Becker [Fri, 4 Oct 2019 17:02:37 +0000 (19:02 +0200)]
Fix #78633: Heap buffer overflow (read) in mb_eregi

We backport kkos/oniguruma@15c4228aa2ffa02140a99912dd3177df0b1841c6.

5 years agoAdd NEWS for the fixed bug #74083
Jakub Zelenka [Sun, 20 Oct 2019 15:58:13 +0000 (16:58 +0100)]
Add NEWS for the fixed bug #74083

5 years agoSkip fpm bug #74083 test on Windows
Maksim Nikulin [Thu, 25 Jul 2019 06:15:35 +0000 (13:15 +0700)]
Skip fpm bug #74083 test on Windows

Have not expected side effects of `include`.

5 years agoAdd (slow) test for fpm concurrent reloads #74083
Maksim Nikulin [Thu, 25 Jul 2019 04:41:36 +0000 (11:41 +0700)]
Add (slow) test for fpm concurrent reloads #74083