]>
granicus.if.org Git - php/log
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.
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.
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.
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.
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.
Nikita Popov [Mon, 27 Apr 2020 08:21:26 +0000 (10:21 +0200)]
Add macro to get ini target address
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
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.
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
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
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.
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.
Christoph M. Becker [Sun, 26 Apr 2020 10:10:46 +0000 (12:10 +0200)]
Add gen_stub.php to devel pack
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
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
Gabriel Caruso [Thu, 23 Apr 2020 18:17:55 +0000 (20:17 +0200)]
Check Serialization magic methods structure
Closes GH-5441
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
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
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
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
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.
Dmitry Stogov [Fri, 24 Apr 2020 13:32:31 +0000 (16:32 +0300)]
Avoid STORE of register inherited from parent trace
Dmitry Stogov [Fri, 24 Apr 2020 13:14:58 +0000 (16:14 +0300)]
Skip life range with LOAD and single use
Dmitry Stogov [Fri, 24 Apr 2020 13:14:44 +0000 (16:14 +0300)]
cleanup
Derick Rethans [Fri, 24 Apr 2020 11:31:33 +0000 (12:31 +0100)]
Updated to version 2020.1 (2020a)
Derick Rethans [Fri, 24 Apr 2020 11:31:33 +0000 (12:31 +0100)]
Empty merge
Derick Rethans [Fri, 24 Apr 2020 11:31:32 +0000 (12:31 +0100)]
Updated to version 2020.1 (2020a)
Derick Rethans [Fri, 24 Apr 2020 11:31:32 +0000 (12:31 +0100)]
Empty merge
Derick Rethans [Fri, 24 Apr 2020 11:31:30 +0000 (12:31 +0100)]
Updated to version 2020.1 (2020a)
Dmitry Stogov [Fri, 24 Apr 2020 11:24:52 +0000 (14:24 +0300)]
Abort register allocation if no candidates
Nikita Popov [Fri, 24 Apr 2020 10:10:06 +0000 (12:10 +0200)]
Use zend_make_tmp_result() helper in more places
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.
Ilija Tovilo [Thu, 23 Apr 2020 18:26:08 +0000 (20:26 +0200)]
Use return in compile_expr for consistency
Christoph M. Becker [Fri, 24 Apr 2020 08:43:42 +0000 (10:43 +0200)]
Update intl test suite for ICU 67.1
Symeon Charalabides [Thu, 23 Apr 2020 22:51:07 +0000 (23:51 +0100)]
Test XSLTProcessor::importStylesheet() with invalid stylesheet
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`.
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
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
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
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)
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.
Jacob Dreesen [Thu, 23 Apr 2020 09:20:58 +0000 (11:20 +0200)]
Fix typo in UPGRADING [ci skip]
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.
Dmitry Stogov [Thu, 23 Apr 2020 08:49:28 +0000 (11:49 +0300)]
More accurate life range termination
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
Nikita Popov [Wed, 15 Apr 2020 10:04:15 +0000 (12:04 +0200)]
Remove support for libmysqlclient 5.0
Closes GH-5391.
Nikita Popov [Thu, 23 Apr 2020 08:31:07 +0000 (10:31 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix 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.
Alex Dowad [Wed, 22 Apr 2020 06:38:42 +0000 (08:38 +0200)]
Remove unneeded prototype for spl_array_get_iterator
Alex Dowad [Tue, 21 Apr 2020 13:20:38 +0000 (15:20 +0200)]
Remove unused 'ce_get_iterator' field from spl_fixedarray_object
Alex Dowad [Tue, 21 Apr 2020 13:20:01 +0000 (15:20 +0200)]
Remove unused 'ce_get_iterator' field from spl_heap_object
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>
Nicolas Grekas [Sat, 18 Apr 2020 10:22:00 +0000 (12:22 +0200)]
Skip non-existing properties returned by __sleep()
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.
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.)
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
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
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.
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
Graham Campbell [Tue, 7 Apr 2020 13:41:06 +0000 (15:41 +0200)]
Add additional preg_match test case
Dmitry Stogov [Wed, 22 Apr 2020 12:56:54 +0000 (15:56 +0300)]
Reorder conditions
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
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.
Nikita Popov [Wed, 22 Apr 2020 10:53:34 +0000 (12:53 +0200)]
Diagnose missing format specifier at end of string
Dmitry Stogov [Wed, 22 Apr 2020 10:49:54 +0000 (13:49 +0300)]
Fixed register allocation constraints
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.
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.
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.
Nikita Popov [Wed, 22 Apr 2020 08:11:58 +0000 (10:11 +0200)]
printf: Report error if missing padding character
George Peter Banyard [Tue, 21 Apr 2020 22:50:32 +0000 (00:50 +0200)]
Fix error message in ext/socket
George Peter Banyard [Fri, 10 Jan 2020 14:54:08 +0000 (15:54 +0100)]
Promote warnings to Errors in sockets's extension.
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.
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.
Dmitry Stogov [Tue, 21 Apr 2020 14:34:31 +0000 (17:34 +0300)]
Reuse registers allocated for parent trace in side traces
Dmitry Stogov [Tue, 21 Apr 2020 11:56:56 +0000 (14:56 +0300)]
Register allocation is useless if JIT just calls standarad VM handlers
Nikita Popov [Tue, 21 Apr 2020 10:23:21 +0000 (12:23 +0200)]
Generate zend_builtin_functions FEs from stubs
Dmitry Stogov [Tue, 21 Apr 2020 09:07:36 +0000 (12:07 +0300)]
Removed old TODO
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.
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.
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
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.
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.
Nikita Popov [Wed, 15 Apr 2020 09:51:06 +0000 (11:51 +0200)]
Remove support for EBCDIC
Closes GH-5390.
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
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.
Dmitry Stogov [Mon, 20 Apr 2020 13:02:03 +0000 (16:02 +0300)]
Register allocator and deoptimizer for tracing JIT.
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.
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
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
Nikita Popov [Mon, 20 Apr 2020 10:07:46 +0000 (12:07 +0200)]
Fix file name clash in touch_variation1.phpt
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
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.
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
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
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.
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
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
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...
Máté Kocsis [Sun, 19 Apr 2020 21:05:02 +0000 (23:05 +0200)]
Fix order of ZPP in ext/sqlite3
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