]>
granicus.if.org Git - php/log
Nikita Popov [Tue, 27 Aug 2019 07:12:22 +0000 (09:12 +0200)]
Add skipifs for zmm
Nikita Popov [Tue, 27 Aug 2019 07:09:03 +0000 (09:09 +0200)]
Fix chunk_split test on i386 release
Jakub Zelenka [Mon, 26 Aug 2019 17:12:35 +0000 (18:12 +0100)]
Merge branch 'PHP-7.4'
Jakub Zelenka [Mon, 26 Aug 2019 17:11:04 +0000 (18:11 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4
Tsuyoshi Sadakata [Thu, 25 Jul 2019 14:22:45 +0000 (23:22 +0900)]
Fix bug #78334 (fpm log prefix message includes wrong stdout/stderr notation)
Craig Duncan [Mon, 26 Aug 2019 15:21:38 +0000 (17:21 +0200)]
Convert fileinfo functions arginfo to php stubs
We also allow the context for finfo to be null.
Nikita Popov [Mon, 26 Aug 2019 15:54:00 +0000 (17:54 +0200)]
Merge branch 'PHP-7.4'
Nikita Popov [Mon, 26 Aug 2019 15:52:56 +0000 (17:52 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Mon, 26 Aug 2019 15:50:46 +0000 (17:50 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Mon, 26 Aug 2019 15:48:05 +0000 (17:48 +0200)]
Remove properties HT from nested GC data
The properties HT may be a GC root itself, so we need to remove it.
I'm not sure this issue actually applies to PHP 7.2, but committing
it there to be safe. As seen from the test case, the handling here
is rather buggy on 7.2.
Craig Duncan [Thu, 15 Aug 2019 19:47:15 +0000 (21:47 +0200)]
Convert exif functions arginfo to php stubs
We also allow sections needed to be null.
George Peter Banyard [Fri, 23 Aug 2019 23:52:17 +0000 (01:52 +0200)]
Remove memory exhaustion checks in php_chunk_split()
George Peter Banyard [Sun, 18 Aug 2019 13:33:10 +0000 (15:33 +0200)]
Improve strpos and strstr function family implementation
Nikita Popov [Mon, 26 Aug 2019 14:12:47 +0000 (16:12 +0200)]
Merge branch 'PHP-7.4'
Nikita Popov [Mon, 26 Aug 2019 14:10:29 +0000 (16:10 +0200)]
Don't use needs_live_range hook for "special" live ranges
In particular we were disgarding SILENCE live ranges in opcache,
because we decided that a MAY_BE_LONG type does not need a live
range.
Christoph M. Becker [Mon, 26 Aug 2019 14:03:24 +0000 (16:03 +0200)]
Add ext\opcache stubs
Burak Çakırel [Sun, 25 Aug 2019 20:07:16 +0000 (23:07 +0300)]
Add assert arginfo stubs
Closes GH-4619.
Nikita Popov [Mon, 26 Aug 2019 13:39:39 +0000 (15:39 +0200)]
Make arginfo printing of prefer-ref arguments nicer
Christoph M. Becker [Mon, 26 Aug 2019 13:22:33 +0000 (15:22 +0200)]
Add ext/ffi stubs
Nikita Popov [Mon, 26 Aug 2019 12:34:28 +0000 (14:34 +0200)]
Make sure that params with null default are marked nullable
Nikita Popov [Mon, 26 Aug 2019 12:24:31 +0000 (14:24 +0200)]
Assert that symbol table is available in compact()
I believe NULL here is no longer possible due to the dynamic call
check. A similar assumption already exists in the extract()
implementation.
Christoph M. Becker [Mon, 26 Aug 2019 12:06:08 +0000 (14:06 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Replace deprecated libzip functions
Christoph M. Becker [Mon, 26 Aug 2019 10:37:29 +0000 (12:37 +0200)]
Replace deprecated libzip functions
We replace all deprecated libzip functions with their recommended
substitutes, and add proper comment length checks including a test
case.
George Peter Banyard [Tue, 20 Aug 2019 23:20:53 +0000 (01:20 +0200)]
Promote warnings to errors in array_rand()
Nikita Popov [Mon, 26 Aug 2019 11:14:53 +0000 (13:14 +0200)]
Avoid duplicate "non well-formed" warning
The arginfo checking code for internal functions should not generate
this warning, as it will be thrown by zpp.
Theodore Brown [Mon, 26 Aug 2019 10:52:27 +0000 (12:52 +0200)]
Convert remaining array function arginfo to PHP stubs
viest [Sat, 3 Aug 2019 15:05:56 +0000 (23:05 +0800)]
Remove deprecated getaddrinfo flags
The AI_IDN_ALLOW_UNASSIGNED and AI_IDN_USE_STD3_ASCII_RULES have
been deprecated by glibcs, and PHP 7.4 follows this deprecation.
This removes the offending flags for PHP 8.0.
George Peter Banyard [Thu, 22 Aug 2019 10:09:55 +0000 (12:09 +0200)]
Promote warnings to errors in explode()
Nikita Popov [Mon, 26 Aug 2019 09:33:38 +0000 (11:33 +0200)]
Merge branch 'PHP-7.4'
viest [Sat, 3 Aug 2019 15:05:56 +0000 (23:05 +0800)]
Deprecate AI_IDN_ALLOW_UNASSIGNED and AI_IDN_USE_STD3_ASCII_RULES
These flags have been deprecated in glibc 2.28, so we also
deprecate them in PHP.
As we can't deprecate constants, we can only check for their use
in socket_addrinfo_lookup().
Nikita Popov [Mon, 26 Aug 2019 09:15:18 +0000 (11:15 +0200)]
Merge branch 'PHP-7.4'
Nikita Popov [Mon, 26 Aug 2019 09:13:57 +0000 (11:13 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Mon, 26 Aug 2019 09:13:49 +0000 (11:13 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
Tyson Andre [Sun, 25 Aug 2019 15:02:28 +0000 (11:02 -0400)]
Also fix signature for passthru
Backported from
a1a8d144854acb1c891cf0c21abb0f612b1d8de7
https://www.php.net/manual/en/function.passthru.php#refsect1-function.passthru-returnvalues
`passthru()` is false with invalid args
`passthru('command')` is null.
Tyson Andre [Sun, 25 Aug 2019 14:48:52 +0000 (10:48 -0400)]
Fix opcache optimizer info for time_nanosleep
This can also return an array. See
https://www.php.net/manual/en/function.time-nanosleep.php#refsect1-function.time-nanosleep-returnvalues
> If the delay was interrupted by a signal, an associative array will be
returned with the components:
>
> - seconds - number of seconds remaining in the delay
> - nanoseconds - number of nanoseconds remaining in the delay
Sending a SIGUSR1 to the below program would trigger this behavior.
```
pcntl_signal(\SIGUSR1, function ($signo, $signinfo) {
echo "Handling a signal $signo\n";
});
echo "Sleeping for 100 seconds\n";
var_export(time_nanosleep(100, 0));
```
The incomplete signature existed since
c88ffa9a5 .
No phpt tests existed for time_nanosleep returning an array
Nikita Popov [Mon, 26 Aug 2019 09:10:07 +0000 (11:10 +0200)]
Merge branch 'PHP-7.4'
Nikita Popov [Mon, 26 Aug 2019 09:08:42 +0000 (11:08 +0200)]
Fixed bug #78456
Nikita Popov [Mon, 26 Aug 2019 08:28:14 +0000 (10:28 +0200)]
Merge branch 'PHP-7.4'
Nikita Popov [Mon, 26 Aug 2019 08:27:08 +0000 (10:27 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Mon, 26 Aug 2019 08:26:49 +0000 (10:26 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Mon, 26 Aug 2019 08:23:23 +0000 (10:23 +0200)]
Fix overflow in memory limit checks
Due to overflows in the memory limit checks, we were missing cases
where the allocation size was close to the address space size, and
caused an OOM condition rather than a memory limit error.
Stanislav Malyshev [Mon, 26 Aug 2019 03:06:50 +0000 (20:06 -0700)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix test
Stanislav Malyshev [Mon, 26 Aug 2019 03:06:43 +0000 (20:06 -0700)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix test
Stanislav Malyshev [Mon, 26 Aug 2019 03:06:02 +0000 (20:06 -0700)]
Fix test
Not sure why offset changed... probably different PCRE version calculates
them in different way.
Stanislav Malyshev [Mon, 26 Aug 2019 02:21:13 +0000 (19:21 -0700)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix #75457: heap-use-after-free in php7.0.25
Stanislav Malyshev [Mon, 26 Aug 2019 02:21:08 +0000 (19:21 -0700)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix #75457: heap-use-after-free in php7.0.25
Stanislav Malyshev [Mon, 26 Aug 2019 02:21:04 +0000 (19:21 -0700)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Fix #75457: heap-use-after-free in php7.0.25
Stanislav Malyshev [Mon, 26 Aug 2019 02:20:59 +0000 (19:20 -0700)]
Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
Fix #75457: heap-use-after-free in php7.0.25
Christoph M. Becker [Fri, 16 Aug 2019 12:29:19 +0000 (14:29 +0200)]
Fix #75457: heap-use-after-free in php7.0.25
Backport <https://vcs.pcre.org/pcre?view=revision&revision=1638>.
Christoph M. Becker [Sun, 25 Aug 2019 20:46:55 +0000 (22:46 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix #78454: Consecutive numeric separators cause OOM error
Theodore Brown [Sun, 25 Aug 2019 05:33:51 +0000 (00:33 -0500)]
Fix #78454: Consecutive numeric separators cause OOM error
Resolves out of memory error when consecutive numeric separators follow a binary/hex literal.
George Peter Banyard [Thu, 22 Aug 2019 10:03:22 +0000 (12:03 +0200)]
Promote warnings to errors in str_pad()
Christoph M. Becker [Sun, 25 Aug 2019 16:28:15 +0000 (18:28 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Don't modify arrays passed by value
Christoph M. Becker [Sat, 24 Aug 2019 08:28:43 +0000 (10:28 +0200)]
Don't modify arrays passed by value
Christoph M. Becker [Sun, 25 Aug 2019 15:55:40 +0000 (17:55 +0200)]
Add ext/gmp stubs
Nikita Popov [Sun, 25 Aug 2019 14:31:15 +0000 (16:31 +0200)]
Remove unnecessary haystack length check in stripos()
This falls out naturally from the following condition, because
either the needle length will be zero as well, or the needle
will be longer than the (empty) haystack.
Nikita Popov [Sun, 25 Aug 2019 14:09:20 +0000 (16:09 +0200)]
Remove unnecessary NULL check
needle_dup cannot be NULL here.
Nikita Popov [Sun, 25 Aug 2019 13:32:33 +0000 (15:32 +0200)]
Make string size calculation in chunk_split more precise
The +1 on the string length is unnecessary, as we need the string
length without trailing NUL byte here.
The +1 on the chunks is only necessary if there is a rest. If the
string devides into chunks exactly, we don't need an extra chunk.
This makes the allocations exactly as large as it needs to be.
Olumide Samson [Sun, 25 Aug 2019 13:24:46 +0000 (15:24 +0200)]
Add some header and html function stub
Christoph M. Becker [Sun, 25 Aug 2019 12:50:01 +0000 (14:50 +0200)]
Add stubs for ext/ftp
Nikita Popov [Sun, 25 Aug 2019 07:38:49 +0000 (09:38 +0200)]
Skip memory_limit test without ZMM
Stanislav Malyshev [Sun, 25 Aug 2019 07:21:23 +0000 (00:21 -0700)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Update Oniguruma to 6.9.1
Stanislav Malyshev [Sun, 25 Aug 2019 07:20:40 +0000 (00:20 -0700)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Update Oniguruma to 6.9.1
Stanislav Malyshev [Sun, 25 Aug 2019 06:53:35 +0000 (23:53 -0700)]
Update Oniguruma to 6.9.1
Stanislav Malyshev [Sun, 25 Aug 2019 06:17:44 +0000 (23:17 -0700)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix CVE-2019-13224: don't allow different encodings for onig_new_deluxe()
set version for release
Stanislav Malyshev [Sun, 25 Aug 2019 06:17:12 +0000 (23:17 -0700)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix CVE-2019-13224: don't allow different encodings for onig_new_deluxe()
set version for release
Stanislav Malyshev [Sun, 25 Aug 2019 06:16:09 +0000 (23:16 -0700)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Fix CVE-2019-13224: don't allow different encodings for onig_new_deluxe()
set version for release
Stanislav Malyshev [Sun, 25 Aug 2019 06:15:36 +0000 (23:15 -0700)]
Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
Fix CVE-2019-13224: don't allow different encodings for onig_new_deluxe()
set version for release
Stanislav Malyshev [Sun, 25 Aug 2019 06:11:45 +0000 (23:11 -0700)]
Fix CVE-2019-13224: don't allow different encodings for onig_new_deluxe()
Backport from https://github.com/kkos/oniguruma/commit/
0f7f61ed1b7b697e283e37bd2d731d0bd57adb55
George Peter Banyard [Fri, 23 Aug 2019 18:27:50 +0000 (20:27 +0200)]
Remove 'bogus' error condition in str_pad()
George Peter Banyard [Wed, 21 Aug 2019 17:35:35 +0000 (19:35 +0200)]
Promote warning to error in zend_forbid_dynamic_call()
George Peter Banyard [Thu, 22 Aug 2019 09:28:22 +0000 (11:28 +0200)]
Promote warnings to errors in str_repeat()
Christoph M. Becker [Fri, 23 Aug 2019 16:11:48 +0000 (18:11 +0200)]
Don't explicitly set return value on ZPP failure in ext/iconv
Failing ZPP throws as of PHP 8.0.0, so explicitly setting a return
value is useless, and also slightly confusing.
Christoph M. Becker [Fri, 23 Aug 2019 16:10:01 +0000 (18:10 +0200)]
Add ext/iconv stubs
Nikita Popov [Fri, 23 Aug 2019 15:23:31 +0000 (17:23 +0200)]
Merge branch 'PHP-7.4'
Nikita Popov [Fri, 16 Aug 2019 10:55:28 +0000 (12:55 +0200)]
Relax closure $this unbinding deprecation
Only deprecate unbinding of $this from a closure if $this is
syntactically used within the closure.
This is desired to support Laravel's macro system, see laravel/framework#29482.
This should still allow us to implement the performance improvements
we're interested in for PHP 8, without breaking existing use-cases.
Nikita Popov [Fri, 23 Aug 2019 15:01:49 +0000 (17:01 +0200)]
Merge branch 'PHP-7.4'
Nikita Popov [Fri, 23 Aug 2019 14:58:34 +0000 (16:58 +0200)]
Fix arginfo leak when using disabled_classes
Also remove the hack where scope is set to NULL in order to make
free_internal_arg_info work. Instead explicitly call it for class
methods.
This fixes the asan build for Zend/tests/bug77494.phpt.
Nikita Popov [Fri, 23 Aug 2019 14:18:15 +0000 (16:18 +0200)]
Fix noalias violation in select call
Nikita Popov [Fri, 23 Aug 2019 14:14:19 +0000 (16:14 +0200)]
Avoid strncat use in proc_open
Instead manually manage the insertion position.
Nikita Popov [Fri, 23 Aug 2019 13:51:57 +0000 (15:51 +0200)]
Replace strncat in filter implementation
In this case we already know exactly where we need to write, no
need to use strncat at all.
Nikita Popov [Fri, 23 Aug 2019 13:37:07 +0000 (15:37 +0200)]
Merge branch 'PHP-7.4'
Nikita Popov [Wed, 21 Aug 2019 14:19:58 +0000 (16:19 +0200)]
Support variable element size in spl heap implementation
This allows us to drop the intermediate allocation for
spl_pqueue_elem.
This fixes GC for SplPriorityQueue, because we can now directly
return a well-formed GC child buffer.
Nikita Popov [Fri, 23 Aug 2019 13:27:55 +0000 (15:27 +0200)]
Merge branch 'PHP-7.4'
Nikita Popov [Fri, 23 Aug 2019 13:27:28 +0000 (15:27 +0200)]
Fixed bug #78436
Christoph M. Becker [Fri, 23 Aug 2019 12:49:50 +0000 (14:49 +0200)]
Fix bug77812-*.phpt
Undefined constants error as of PHP 8.0.0.
Christoph M. Becker [Fri, 23 Aug 2019 12:04:52 +0000 (14:04 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix #77812: Interactive mode does not support PHP 7.3-style heredoc
Christoph M. Becker [Fri, 23 Aug 2019 12:02:48 +0000 (14:02 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix #77812: Interactive mode does not support PHP 7.3-style heredoc
Christoph M. Becker [Fri, 23 Aug 2019 11:59:10 +0000 (13:59 +0200)]
Fix #77812: Interactive mode does not support PHP 7.3-style heredoc
As of PHP 7.3.0, the rules regarding the heredoc and nowdoc closing
identifier have been relaxed. While formerly, the closing identifier
was required to be placed at the beginning of a line and to be
immediately followed by (a semicolon and) a line break, it may now be
preceeded by whitespace, and may be followed by any non-word character.
We adjust the recognition logic respectively.
Tyson Andre [Fri, 23 Aug 2019 01:14:00 +0000 (21:14 -0400)]
Fix escapes for namespaced classes in gen_stub.php
Fix the string generated when the `ns\class` is passed to a macro
#define ESCAPE(x) #x
// puts(ESCAPE(ns\class)); // warning: unknown escape sequence: \c
puts(ESCAPE(ns\\class)); // Properly prints ns\class to stdout.
Christoph M. Becker [Fri, 23 Aug 2019 10:23:16 +0000 (12:23 +0200)]
Empty merge
Christoph M. Becker [Fri, 23 Aug 2019 10:22:28 +0000 (12:22 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Suppress deprecation warning on IDNA2003 ICU methods for clang
Christoph M. Becker [Fri, 23 Aug 2019 10:21:57 +0000 (12:21 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Suppress deprecation warning on IDNA2003 ICU methods for clang
Christoph M. Becker [Fri, 23 Aug 2019 09:14:18 +0000 (11:14 +0200)]
Suppress deprecation warning on IDNA2003 ICU methods for clang
Christoph M. Becker [Fri, 23 Aug 2019 09:41:38 +0000 (11:41 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix #78438: Corruption when __unserializing deeply nested structures
Christoph M. Becker [Fri, 23 Aug 2019 09:30:31 +0000 (11:30 +0200)]
Fix #78438: Corruption when __unserializing deeply nested structures
When storing two temporary variables for delayed __unserialize() calls,
we have to make sure that both fit into the same linked list element.
To that end we introduce the internal API `tmp_var` which allows to
reserve `num` slots in the same list element.
We also fix the `var_dtor_entries` struct definition to use the proper
size, namely `VAR_DTOR_ENTRIES_MAX`.
George Peter Banyard [Thu, 22 Aug 2019 10:14:02 +0000 (12:14 +0200)]
Promote warnings to errors in chunk_split()
George Peter Banyard [Thu, 22 Aug 2019 10:18:12 +0000 (12:18 +0200)]
Promote warnings to errors in str_word_count()
George Peter Banyard [Thu, 22 Aug 2019 09:45:10 +0000 (11:45 +0200)]
Promote warnings to errors in wordwrap()
George Peter Banyard [Thu, 22 Aug 2019 09:58:57 +0000 (11:58 +0200)]
Promote warnings to errors in dirname()