]> granicus.if.org Git - php/log
php
4 years agoTest xml_error_string() and xml_get_error_code()
Symeon Charalabides [Sat, 25 Apr 2020 00:04:35 +0000 (01:04 +0100)]
Test xml_error_string() and xml_get_error_code()

Closes GH-5456.

4 years agoFixed run-tests.php for PHP 7.2
Flávio Heleno [Fri, 24 Apr 2020 01:26:35 +0000 (22:26 -0300)]
Fixed run-tests.php for PHP 7.2

Flexible heredoc syntax is only available since PHP 7.3.

Closes GH-5444.

4 years agoRemove duplicate tests
Alex Dowad [Sat, 25 Apr 2020 22:03:44 +0000 (00:03 +0200)]
Remove duplicate tests

Remove duplicate test (iterator_018.phpt)

This is exactly the same as iterator_011.phpt.

Remove duplicate test (offsets_chaining_2.phpt)

This is exactly the same as offsets_chaining_1.phpt.

Remove duplicate test (offsets_chaining_4.phpt)

This is exactly the same as offsets_chaining_3.phpt.

Remove duplicate test (ReflectionObject_export_basic1.phpt)

This is exactly the same as ReflectionObject___toString_basic1.phpt.

Remove duplicate test (ReflectionObject_export_basic2.phpt)

This is exactly the same as ReflectionObject___toString_basic2.phpt.

Closes GH-5467.

4 years agoEnsure bcmath scale is between 0 and INT_MAX
Vladyslav Startsev [Fri, 24 Apr 2020 23:18:09 +0000 (02:18 +0300)]
Ensure bcmath scale is between 0 and INT_MAX

Make sure bcmatch scale is between 0 and INT_MAX, both for the
ini setting, and all the functions accepting a scale argument.
A ValueError is thrown if a function argument is out of range.

Closes GH-5455.

4 years agoAdd helper APIs for get_gc implementations
Nikita Popov [Fri, 24 Apr 2020 16:59:13 +0000 (18:59 +0200)]
Add helper APIs for get_gc implementations

get_gc() implementations that need to explore heterogeneous data
currently work by computing how many GC entries they need,
allocating a buffer for that and storing it on the object. This
is inefficient and wastes memory, because the buffer is retained
after the GC run.

This commit adds an API for a single global GC buffer, which can
be reused by get_gc implementations (as only one get_gc call is
ever active at the same time). The GC buffer will automatically
grow during the GC run and be discarded at the end.

4 years agoAdd macro to get ini target address
Nikita Popov [Mon, 27 Apr 2020 08:21:26 +0000 (10:21 +0200)]
Add macro to get ini target address

4 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Mon, 27 Apr 2020 08:07:54 +0000 (10:07 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #79065: DOM classes do not expose properties to Reflection

4 years agoFix #79065: DOM classes do not expose properties to Reflection
Christoph M. Becker [Tue, 21 Apr 2020 11:28:01 +0000 (13:28 +0200)]
Fix #79065: DOM classes do not expose properties to Reflection

We add a `get_properties` handler which complements the already
existing `has_property` and `read_property`handlers.

4 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Mon, 27 Apr 2020 07:32:02 +0000 (09:32 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #79470: PHP incompatible with 3rd party file system on demand

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Mon, 27 Apr 2020 07:31:21 +0000 (09:31 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #79470: PHP incompatible with 3rd party file system on demand

4 years agoFix #79470: PHP incompatible with 3rd party file system on demand
Christoph M. Becker [Fri, 24 Apr 2020 15:24:25 +0000 (17:24 +0200)]
Fix #79470: PHP incompatible with 3rd party file system on demand

We add support for Activision HSM (`IO_REPARSE_TAG_ACTIVISION_HSM`) and
VFS for Git (`IO_REPARSE_TAG_PROJFS`).  The latter fixes bug #78784.

4 years agoAdd case insensitive find_ptr hash functions
Levi Morrison [Fri, 24 Apr 2020 21:00:13 +0000 (15:00 -0600)]
Add case insensitive find_ptr hash functions

 - zend_hash_find_ptr_lc(ht, zend_string *key)
 - zend_hash_str_find_ptr_lc(ht, const char *str, size_t len)

Note that zend_hash_str_find_ptr_lc used to exist in zend_compile.c
as        zend_hash_find_ptr_lc. When exporting this I figured it
was best to use the same conventions as the rest of zend_hash.h.

4 years agoAdd gen_stub.php to devel pack
Christoph M. Becker [Sun, 26 Apr 2020 10:10:46 +0000 (12:10 +0200)]
Add gen_stub.php to devel pack

4 years agoGenerate method entries from stubs for Zend classes
Máté Kocsis [Sat, 25 Apr 2020 21:10:07 +0000 (23:10 +0200)]
Generate method entries from stubs for Zend classes

Closes GH-5459

4 years agoClean section of test not working due to short open tags
Gabriel Caruso [Thu, 23 Apr 2020 15:13:01 +0000 (17:13 +0200)]
Clean section of test not working due to short open tags

Closes GH-5440

4 years agoCheck Serialization magic methods structure
Gabriel Caruso [Thu, 23 Apr 2020 18:17:55 +0000 (20:17 +0200)]
Check Serialization magic methods structure

Closes GH-5441

4 years agoUse the default type error message for Exception::__construct()
Máté Kocsis [Sat, 25 Apr 2020 22:15:52 +0000 (00:15 +0200)]
Use the default type error message for Exception::__construct()

Closes GH-5460

4 years agoGenerate methods entries from stubs for ext/spl
Máté Kocsis [Sat, 25 Apr 2020 17:08:53 +0000 (19:08 +0200)]
Generate methods entries from stubs for ext/spl

Closes GH-5458

4 years agoNothing in codebase cares whether platform has fpclass()
Alex Dowad [Wed, 22 Apr 2020 11:00:40 +0000 (13:00 +0200)]
Nothing in codebase cares whether platform has fpclass()

Therefore, don't bother checking for it in 'configure' script.

Closes GH-5453

4 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Fri, 24 Apr 2020 16:17:21 +0000 (18:17 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #79514: Memory leaks while including unexistent file

4 years agoFix #79514: Memory leaks while including unexistent file
Christoph M. Becker [Fri, 24 Apr 2020 12:51:44 +0000 (14:51 +0200)]
Fix #79514: Memory leaks while including unexistent file

We have to destroy (un-opened) ZEND_HANDLE_FILENAMEs.

4 years agoAvoid STORE of register inherited from parent trace
Dmitry Stogov [Fri, 24 Apr 2020 13:32:31 +0000 (16:32 +0300)]
Avoid STORE of register inherited from parent trace

4 years agoSkip life range with LOAD and single use
Dmitry Stogov [Fri, 24 Apr 2020 13:14:58 +0000 (16:14 +0300)]
Skip life range with LOAD and single use

4 years agocleanup
Dmitry Stogov [Fri, 24 Apr 2020 13:14:44 +0000 (16:14 +0300)]
cleanup

4 years agoUpdated to version 2020.1 (2020a)
Derick Rethans [Fri, 24 Apr 2020 11:31:33 +0000 (12:31 +0100)]
Updated to version 2020.1 (2020a)

4 years agoEmpty merge
Derick Rethans [Fri, 24 Apr 2020 11:31:33 +0000 (12:31 +0100)]
Empty merge

4 years agoUpdated to version 2020.1 (2020a)
Derick Rethans [Fri, 24 Apr 2020 11:31:32 +0000 (12:31 +0100)]
Updated to version 2020.1 (2020a)

4 years agoEmpty merge
Derick Rethans [Fri, 24 Apr 2020 11:31:32 +0000 (12:31 +0100)]
Empty merge

4 years agoUpdated to version 2020.1 (2020a)
Derick Rethans [Fri, 24 Apr 2020 11:31:30 +0000 (12:31 +0100)]
Updated to version 2020.1 (2020a)

4 years agoAbort register allocation if no candidates
Dmitry Stogov [Fri, 24 Apr 2020 11:24:52 +0000 (14:24 +0300)]
Abort register allocation if no candidates

4 years agoUse zend_make_tmp_result() helper in more places
Nikita Popov [Fri, 24 Apr 2020 10:10:06 +0000 (12:10 +0200)]
Use zend_make_tmp_result() helper in more places

4 years agoAccept result znode in zend_compile_class_decl()
Nikita Popov [Fri, 24 Apr 2020 10:04:54 +0000 (12:04 +0200)]
Accept result znode in zend_compile_class_decl()

Make this use the same pattern we use everywhere else.

4 years agoUse return in compile_expr for consistency
Ilija Tovilo [Thu, 23 Apr 2020 18:26:08 +0000 (20:26 +0200)]
Use return in compile_expr for consistency

4 years agoUpdate intl test suite for ICU 67.1
Christoph M. Becker [Fri, 24 Apr 2020 08:43:42 +0000 (10:43 +0200)]
Update intl test suite for ICU 67.1

4 years agoTest XSLTProcessor::importStylesheet() with invalid stylesheet
Symeon Charalabides [Thu, 23 Apr 2020 22:51:07 +0000 (23:51 +0100)]
Test XSLTProcessor::importStylesheet() with invalid stylesheet

4 years agoFix #36365: scandir duplicates file name at every 65535th file
Christoph M. Becker [Thu, 23 Apr 2020 12:49:26 +0000 (14:49 +0200)]
Fix #36365: scandir duplicates file name at every 65535th file

Since DIR_W32.offset is declared as `uint16_t`, we have an overflow for
directories with many entries.  This patch changes the field to
`uint32_t`.

4 years agoRemove dead checks for LOG_FILE paths, replace with CONFIG_ONLY option
Sara Golemon [Fri, 24 Apr 2020 01:27:40 +0000 (01:27 +0000)]
Remove dead checks for LOG_FILE paths, replace with CONFIG_ONLY option

4 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Thu, 23 Apr 2020 15:39:47 +0000 (17:39 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Add additional preg_match test case

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Thu, 23 Apr 2020 15:36:04 +0000 (17:36 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Add additional preg_match test case

4 years agoAdd additional preg_match test case
Graham Campbell [Tue, 7 Apr 2020 13:41:06 +0000 (15:41 +0200)]
Add additional preg_match test case

(cherry picked from commit a1a044dcc74379fafb2b63db5ab033aa062aada7
on author's explicit request)

4 years agoMake throw statement an expression
Ilija Tovilo [Wed, 18 Mar 2020 23:51:51 +0000 (00:51 +0100)]
Make throw statement an expression

RFC: https://wiki.php.net/rfc/throw_expression

This has an open issue with temporaries that are live at the time
of the throw being leaked. Landing this now for easier testing and
will revert if we cannot resolve the issue.

Closes GH-5279.

4 years agoFix typo in UPGRADING [ci skip]
Jacob Dreesen [Thu, 23 Apr 2020 09:20:58 +0000 (11:20 +0200)]
Fix typo in UPGRADING [ci skip]

4 years agoFix treatment of "self" when validating against trait method
Nikita Popov [Thu, 23 Apr 2020 09:34:07 +0000 (11:34 +0200)]
Fix treatment of "self" when validating against trait method

If we're validating a class method against a trait method, we need
to treat "self" in the trait method as the class where the method
is used. To achieve this, we need to thread the proto scope through
all methods, so it can be provided separately from proto.common->scope.

4 years agoMore accurate life range termination
Dmitry Stogov [Thu, 23 Apr 2020 08:49:28 +0000 (11:49 +0300)]
More accurate life range termination

4 years agoAdd get_debug_type() function
Your Name [Sun, 2 Feb 2020 21:43:42 +0000 (21:43 +0000)]
Add get_debug_type() function

RFC: https://wiki.php.net/rfc/get_debug_type

4 years agoRemove support for libmysqlclient 5.0
Nikita Popov [Wed, 15 Apr 2020 10:04:15 +0000 (12:04 +0200)]
Remove support for libmysqlclient 5.0

Closes GH-5391.

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Thu, 23 Apr 2020 08:31:07 +0000 (10:31 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix bug #79447

4 years agoFix bug #79447
Nicolas Grekas [Wed, 15 Apr 2020 22:11:38 +0000 (00:11 +0200)]
Fix bug #79447

Partially reverts 846b6479537a112d1ded725e6484e46462048b35: instead of
throwing, this skips uninitialized typed properties when serializing objects.

This makes serialize with __sleep() behave the same as serialize()
without __sleep().

As in the non-__sleep() case, unserialize(serialize($x)) identity
may not be preserved due to replacement of uninitialized/unset
properties with default values. Fixing this will require changes to
the serialization format.

Closes GH-5396.

4 years agoRemove unneeded prototype for spl_array_get_iterator
Alex Dowad [Wed, 22 Apr 2020 06:38:42 +0000 (08:38 +0200)]
Remove unneeded prototype for spl_array_get_iterator

4 years agoRemove unused 'ce_get_iterator' field from spl_fixedarray_object
Alex Dowad [Tue, 21 Apr 2020 13:20:38 +0000 (15:20 +0200)]
Remove unused 'ce_get_iterator' field from spl_fixedarray_object

4 years agoRemove unused 'ce_get_iterator' field from spl_heap_object
Alex Dowad [Tue, 21 Apr 2020 13:20:01 +0000 (15:20 +0200)]
Remove unused 'ce_get_iterator' field from spl_heap_object

4 years agoDrop unnecessary stdint and inttypes header checks
George Peter Banyard [Wed, 22 Apr 2020 18:18:19 +0000 (20:18 +0200)]
Drop unnecessary stdint and inttypes header checks

These are always available as of C99.

Closes GH-5323

Co-authored-by: "Christoph M. Becker" <cmbecker69@gmx.de>
4 years agoSkip non-existing properties returned by __sleep()
Nicolas Grekas [Sat, 18 Apr 2020 10:22:00 +0000 (12:22 +0200)]
Skip non-existing properties returned by __sleep()

4 years agoTests for the default case of the parameter of xml_parser_get_option() and xml_parser...
Symeon Charalabides [Wed, 22 Apr 2020 13:33:22 +0000 (15:33 +0200)]
Tests for the default case of the parameter of xml_parser_get_option() and xml_parser_set_option(). These cases are, as of now, not being tested.

4 years agoDocument change to ReflectionMethod->isConstructor/isDestructor
Tyson Andre [Tue, 21 Apr 2020 23:19:53 +0000 (19:19 -0400)]
Document change to ReflectionMethod->isConstructor/isDestructor

See https://externals.io/message/109377
This prevented PHPUnit's test doubles from being created for interfaces.

The reason this changed is
https://github.com/php/php-src/pull/3846/files#diff-3a8139128d4026ce0cb0c86beba4e6b9L5549-R5605
(ReflectionMethod::isConstruct checks if the method is the zend_class_entry's
constructor, etc.)

4 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Wed, 22 Apr 2020 13:09:14 +0000 (15:09 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #79503: Memory leak on duplicate metadata

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Wed, 22 Apr 2020 13:08:13 +0000 (15:08 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #79503: Memory leak on duplicate metadata

4 years agoFix #79503: Memory leak on duplicate metadata
Christoph M. Becker [Wed, 22 Apr 2020 12:11:13 +0000 (14:11 +0200)]
Fix #79503: Memory leak on duplicate metadata

Duplicate metadata can only happen if someone tampers with the phar, so
we can and should treat that as error.

4 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Wed, 22 Apr 2020 13:03:26 +0000 (15:03 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Add additional preg_match test case

4 years agoAdd additional preg_match test case
Graham Campbell [Tue, 7 Apr 2020 13:41:06 +0000 (15:41 +0200)]
Add additional preg_match test case

4 years agoReorder conditions
Dmitry Stogov [Wed, 22 Apr 2020 12:56:54 +0000 (15:56 +0300)]
Reorder conditions

4 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Wed, 22 Apr 2020 12:24:57 +0000 (14:24 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Upgrade to PCRE2 10.34

4 years agoUpgrade to PCRE2 10.34
Christoph M. Becker [Mon, 6 Apr 2020 12:21:56 +0000 (14:21 +0200)]
Upgrade to PCRE2 10.34

We backport the slightly modified variant from master.

4 years agoDiagnose missing format specifier at end of string
Nikita Popov [Wed, 22 Apr 2020 10:53:34 +0000 (12:53 +0200)]
Diagnose missing format specifier at end of string

4 years agoFixed register allocation constraints
Dmitry Stogov [Wed, 22 Apr 2020 10:49:54 +0000 (13:49 +0300)]
Fixed register allocation constraints

4 years agoEmit diagnostic on unknown printf specifier
Nikita Popov [Tue, 21 Apr 2020 16:18:21 +0000 (18:18 +0200)]
Emit diagnostic on unknown printf specifier

Removing lots of bogus tests...

Closes GH-5435.

4 years agoRemove some redundant sprintf variation tests
Nikita Popov [Wed, 22 Apr 2020 09:02:55 +0000 (11:02 +0200)]
Remove some redundant sprintf variation tests

Add a single test that feeds different data types into the relevant
format specifiers, and remove tests that test full matrices of
different types with different formats and modifiers. We're just
interested in how the types are going to be interpreted, the behavior
of all the modifiers is going to stay the same.

4 years agoprintf: Unify error case
Nikita Popov [Wed, 22 Apr 2020 08:13:25 +0000 (10:13 +0200)]
printf: Unify error case

There were a couple of places using efree() on result, which works,
but is very fishy. Unify error handling with goto.

4 years agoprintf: Report error if missing padding character
Nikita Popov [Wed, 22 Apr 2020 08:11:58 +0000 (10:11 +0200)]
printf: Report error if missing padding character

4 years agoFix error message in ext/socket
George Peter Banyard [Tue, 21 Apr 2020 22:50:32 +0000 (00:50 +0200)]
Fix error message in ext/socket

4 years agoPromote warnings to Errors in sockets's extension.
George Peter Banyard [Fri, 10 Jan 2020 14:54:08 +0000 (15:54 +0100)]
Promote warnings to Errors in sockets's extension.

4 years agoRemove redundant vfprintf/vsprintf variation tests
Nikita Popov [Tue, 21 Apr 2020 16:24:03 +0000 (18:24 +0200)]
Remove redundant vfprintf/vsprintf variation tests

These duplicate vprintf() variation tests. While it's useful to
test the vfprintf() and vsprintf() variants of the function, the
main formatting machinery is shared between them, and it makes
little sense to repeat the full set of format tests for all of
them.

4 years agoFix number of required parameters in printf
Nikita Popov [Tue, 21 Apr 2020 15:00:12 +0000 (17:00 +0200)]
Fix number of required parameters in printf

If n$ references are involved, the maximum argnum referenced may
not the one at the end. Store it explicitly.

4 years agoReuse registers allocated for parent trace in side traces
Dmitry Stogov [Tue, 21 Apr 2020 14:34:31 +0000 (17:34 +0300)]
Reuse registers allocated for parent trace in side traces

4 years agoRegister allocation is useless if JIT just calls standarad VM handlers
Dmitry Stogov [Tue, 21 Apr 2020 11:56:56 +0000 (14:56 +0300)]
Register allocation is useless if JIT just calls standarad VM handlers

4 years agoGenerate zend_builtin_functions FEs from stubs
Nikita Popov [Tue, 21 Apr 2020 10:23:21 +0000 (12:23 +0200)]
Generate zend_builtin_functions FEs from stubs

4 years agoRemoved old TODO
Dmitry Stogov [Tue, 21 Apr 2020 09:07:36 +0000 (12:07 +0300)]
Removed old TODO

4 years agoAdd crude memory limit to tracked alloc
Nikita Popov [Tue, 28 Jan 2020 11:20:00 +0000 (12:20 +0100)]
Add crude memory limit to tracked alloc

Check whether the requested allocation size exceeds limit (rather
than the cumulative size).

This is useful to prevent allocations triggering OOM during fuzzing.

4 years agoMake gen_stub parallelism safe
Nikita Popov [Tue, 21 Apr 2020 08:17:19 +0000 (10:17 +0200)]
Make gen_stub parallelism safe

If PHP-Parser is not yet installed, make sure we don't try to
install it N times in parallel.

4 years agoEnsure hash_update_stream() always returns the same hash when $length = 0
Symeon Charalabides [Mon, 20 Apr 2020 23:44:57 +0000 (01:44 +0200)]
Ensure hash_update_stream() always returns the same hash when $length = 0

4 years agoFix OPcache build
Christoph M. Becker [Mon, 20 Apr 2020 15:39:28 +0000 (17:39 +0200)]
Fix OPcache build

`||` at the beginning of a line has special meaning for the DynAsm
preprocessor.

4 years agoFix #71417: fread() does not report zlib.inflate errors
Christoph M. Becker [Mon, 20 Apr 2020 11:27:35 +0000 (13:27 +0200)]
Fix #71417: fread() does not report zlib.inflate errors

If the zlib.inflate filter fails to decompress the stream, we raise a
notice instead of failing silently.

4 years agoRemove support for EBCDIC
Nikita Popov [Wed, 15 Apr 2020 09:51:06 +0000 (11:51 +0200)]
Remove support for EBCDIC

Closes GH-5390.

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Mon, 20 Apr 2020 14:37:19 +0000 (16:37 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Don't rand() in test

4 years agoDon't rand() in test
Nikita Popov [Mon, 20 Apr 2020 14:35:52 +0000 (16:35 +0200)]
Don't rand() in test

Instead use port 0 to get a free port from the OS.

4 years agoRegister allocator and deoptimizer for tracing JIT.
Dmitry Stogov [Mon, 20 Apr 2020 13:02:03 +0000 (16:02 +0300)]
Register allocator and deoptimizer for tracing JIT.

4 years agoFix #71263: fread() does not report bzip2.decompress errors
Christoph M. Becker [Fri, 17 Apr 2020 13:48:20 +0000 (15:48 +0200)]
Fix #71263: fread() does not report bzip2.decompress errors

If the bzip2.decompress filter fails to decompress the stream, we raise
a notice instead of failing silently.

4 years agoImprove a last couple of argument error messages
Máté Kocsis [Thu, 16 Apr 2020 22:09:15 +0000 (00:09 +0200)]
Improve a last couple of argument error messages

Closes GH-5404

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Mon, 20 Apr 2020 10:07:59 +0000 (12:07 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix file name clash in touch_variation1.phpt

4 years agoFix file name clash in touch_variation1.phpt
Nikita Popov [Mon, 20 Apr 2020 10:07:46 +0000 (12:07 +0200)]
Fix file name clash in touch_variation1.phpt

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Mon, 20 Apr 2020 09:55:56 +0000 (11:55 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix bug #67369 ArrayObject serializatino drops the iterator class

4 years agoFix bug #67369 ArrayObject serializatino drops the iterator class
Alex Dowad [Wed, 15 Apr 2020 13:25:14 +0000 (15:25 +0200)]
Fix bug #67369 ArrayObject serializatino drops the iterator class

When ArrayObject is round-tripped through serialize() and unserialize(),
it forgets any iterator class name which was set using ::setIteratorClass().
Fix that.

4 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Mon, 20 Apr 2020 09:00:01 +0000 (11:00 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #79491: Search for .user.ini extends up to root dir

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Mon, 20 Apr 2020 08:58:03 +0000 (10:58 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #79491: Search for .user.ini extends up to root dir

4 years agoFix #79491: Search for .user.ini extends up to root dir
Christoph M. Becker [Sun, 19 Apr 2020 12:22:24 +0000 (14:22 +0200)]
Fix #79491: Search for .user.ini extends up to root dir

The `start` parameter of `php_cgi_ini_activate_user_config` is supposed
to hold the byte offset of the doc root in the given `path`.  However,
the current expression which fixes a potential type incompatibility
will ever only evaluate to zero or one, because it uses the *logical*
and operator (`&&`).  Furthermore we notice that subtracting one from
`doc_root_len` is not necessary, so there is even no need for the
`start` parameter at all.

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Mon, 20 Apr 2020 08:48:20 +0000 (10:48 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Apply doc root fix for FPM

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Mon, 20 Apr 2020 08:48:05 +0000 (10:48 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Apply doc root fix for FPM

4 years agoApply doc root fix for FPM
Nikita Popov [Mon, 20 Apr 2020 08:46:20 +0000 (10:46 +0200)]
Apply doc root fix for FPM

This is the change from GH-5417 but for FPM. This was stripping the
last character from the doc_root. Given how it is used, this should
be harmless, but let's make it less confusing...

4 years agoFix order of ZPP in ext/sqlite3
Máté Kocsis [Sun, 19 Apr 2020 21:05:02 +0000 (23:05 +0200)]
Fix order of ZPP in ext/sqlite3

4 years agoGenerate function entries from stubs
Máté Kocsis [Sun, 19 Apr 2020 18:05:16 +0000 (20:05 +0200)]
Generate function entries from stubs

Converts ext/pcntl, ext/simplexml, ext/snmp, ext/soap, ext/sqlite3.
Closes GH-5421