]> granicus.if.org Git - php/log
php
5 years agoadd ZipArchive::registerProgressCallback and ZipArchive::registerCancelCallback methods
Remi Collet [Thu, 30 Jan 2020 10:14:53 +0000 (11:14 +0100)]
add ZipArchive::registerProgressCallback and ZipArchive::registerCancelCallback methods

5 years agoFixed JIT part for bug #79094
Dmitry Stogov [Fri, 31 Jan 2020 07:39:22 +0000 (10:39 +0300)]
Fixed JIT part for bug #79094

5 years agoMerge branch 'PHP-7.4'
Dmitry Stogov [Fri, 31 Jan 2020 07:34:28 +0000 (10:34 +0300)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fixed bug #79094 (Crashing when running recursion function)

5 years agoFixed bug #79094 (Crashing when running recursion function)
Dmitry Stogov [Fri, 31 Jan 2020 07:34:04 +0000 (10:34 +0300)]
Fixed bug #79094 (Crashing when running recursion function)

5 years agoAdd NEWS entry for new ReflectionProperty methods.
Benjamin Eberlei [Thu, 30 Jan 2020 16:48:20 +0000 (17:48 +0100)]
Add NEWS entry for new ReflectionProperty methods.

5 years agoPromote mysqli warnings to exceptions
Máté Kocsis [Sun, 5 Jan 2020 18:49:34 +0000 (19:49 +0100)]
Promote mysqli warnings to exceptions

Closes GH-5058

5 years agoRevert "Make BG(syslog_device) per request"
Nikita Popov [Thu, 30 Jan 2020 15:18:02 +0000 (16:18 +0100)]
Revert "Make BG(syslog_device) per request"

This reverts commit b0d7b126a29a1972229ac91d6d28f5331912eddb.

This change wasn't quite right: I noticed only now that the
RSHUTDOWN function is #ifdef PHP_WIN32 and I'm not fully convinced
that ifdef can be removed: syslog might also be used by error
logging in FPM for example, in which case we probably shouldn't
be closing the log here.

Generally it's unclear how the openlog() functionality exposed
by PHP is supposed to interact with openlog() uses by SAPIs.

For now I'll just revert this change and let it leak across
requests.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Thu, 30 Jan 2020 14:52:22 +0000 (15:52 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  fix cross compilation failure due to size_t typecast in define

5 years agofix cross compilation failure due to size_t typecast in define
Pascal de Bruijn [Thu, 30 Jan 2020 12:48:44 +0000 (13:48 +0100)]
fix cross compilation failure due to size_t typecast in define

The following commit introduces a cross-compilation failure:

   93c728b77cfb47f5cfdd1863f8982ea59d344205
  "Try to control ZEND_MM_ALIGNED_SIZE type"

br-arm-full/build/php-7.4.2/Zend/zend_alloc.h:30:38:
error: missing binary operator before token "8"
                                              ^
br-arm-full/build/php-7.4.2/ext/opcache/ZendAccelerator.c:1380:7:
note: in expansion of macro ‘ZEND_MM_ALIGNMENT’

Closes GH-5128.

5 years agoInitialize SplFixedArray elements to NULL instead of UNDEF
Nikita Popov [Thu, 30 Jan 2020 14:31:39 +0000 (15:31 +0100)]
Initialize SplFixedArray elements to NULL instead of UNDEF

The SplFixedArray API treats all elements as NULL, even if they
have not been explicitly initialized. Rather than initializing
to UNDEF an treating that specially in various circumstances,
directly initialize elements to NULL.

This also fixes an assertion failure in the attached test case.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Thu, 30 Jan 2020 13:56:31 +0000 (14:56 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fixed bug #79193

5 years agoFixed bug #79193
Nikita Popov [Thu, 30 Jan 2020 13:55:58 +0000 (14:55 +0100)]
Fixed bug #79193

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Thu, 30 Jan 2020 13:24:28 +0000 (14:24 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix live range calculation for FE_FETCH

5 years agoFix live range calculation for FE_FETCH
Nikita Popov [Thu, 30 Jan 2020 13:23:46 +0000 (14:23 +0100)]
Fix live range calculation for FE_FETCH

Op2 is def here, not a use, so treat it accordingly.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Thu, 30 Jan 2020 12:14:29 +0000 (13:14 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix DatePeriod property handling with indirect modification

5 years agoFix DatePeriod property handling with indirect modification
Nikita Popov [Thu, 30 Jan 2020 12:09:15 +0000 (13:09 +0100)]
Fix DatePeriod property handling with indirect modification

We do need to implement get_property_ptr_ptr to make arrays work
correctly.

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Thu, 30 Jan 2020 12:07:34 +0000 (13:07 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #70078: XSL callbacks with nodes as parameter leak memory

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Thu, 30 Jan 2020 12:05:49 +0000 (13:05 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #70078: XSL callbacks with nodes as parameter leak memory

5 years agoFix #70078: XSL callbacks with nodes as parameter leak memory
Christoph M. Becker [Wed, 29 Jan 2020 17:23:51 +0000 (18:23 +0100)]
Fix #70078: XSL callbacks with nodes as parameter leak memory

The fix for bug #49634 solved a double-free by copying the node with
`xmlDocCopyNodeList()`, but the copied node is later freed by calling
`xmlFreeNode()` instead of `xmlFreeNodeList()`, thus leaking memory.
However, there is no need to treat the node as node list, i.e. to copy
also the node's siblings; just creating a recursive copy of the node
with `xmlDocCopyNode()` is sufficient, while that also avoids the leak.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Thu, 30 Jan 2020 11:17:15 +0000 (12:17 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix leak in DateTimeImmutable::modify()

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Thu, 30 Jan 2020 11:17:10 +0000 (12:17 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix leak in DateTimeImmutable::modify()

5 years agoFix leak in DateTimeImmutable::modify()
Nikita Popov [Thu, 30 Jan 2020 11:16:43 +0000 (12:16 +0100)]
Fix leak in DateTimeImmutable::modify()

5 years agoUpdate test for warning -> fatal error change
Nikita Popov [Thu, 30 Jan 2020 11:12:09 +0000 (12:12 +0100)]
Update test for warning -> fatal error change

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Thu, 30 Jan 2020 10:56:36 +0000 (11:56 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix copying of functions in variance obligations

5 years agoFix copying of functions in variance obligations
Nikita Popov [Thu, 30 Jan 2020 10:55:38 +0000 (11:55 +0100)]
Fix copying of functions in variance obligations

Only copy sizeof(zend_internal_function) for internal functions.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Thu, 30 Jan 2020 10:21:32 +0000 (11:21 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Add SKIPIF to test requiring mbregex

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Thu, 30 Jan 2020 10:21:26 +0000 (11:21 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Add SKIPIF to test requiring mbregex

5 years agoAdd SKIPIF to test requiring mbregex
Nikita Popov [Thu, 30 Jan 2020 10:20:42 +0000 (11:20 +0100)]
Add SKIPIF to test requiring mbregex

5 years agoFix leak in DatePeriod construction with invalid format
Nikita Popov [Thu, 30 Jan 2020 10:13:04 +0000 (11:13 +0100)]
Fix leak in DatePeriod construction with invalid format

Same issue as I fixed in DateInterval construction before.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Thu, 30 Jan 2020 10:05:56 +0000 (11:05 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Reset trampoline on executor startup
  Fix UAF in is_callable() and allocated trampoline

5 years agoReset trampoline on executor startup
Nikita Popov [Thu, 30 Jan 2020 10:03:14 +0000 (11:03 +0100)]
Reset trampoline on executor startup

Make sure the trampoline is usable, even if we had an unclean
shutdown on the last request.

5 years agoFix UAF in is_callable() and allocated trampoline
Nikita Popov [Thu, 30 Jan 2020 10:01:13 +0000 (11:01 +0100)]
Fix UAF in is_callable() and allocated trampoline

By nulling out the function_handler, so it will not get used
below. Reuse the existing helper for this purpose.

5 years agoFix #74063: NumberFormatter fails after retrieval from session
Christoph M. Becker [Wed, 29 Jan 2020 15:18:46 +0000 (16:18 +0100)]
Fix #74063: NumberFormatter fails after retrieval from session

While it would be desireable to actually support unserialization of
NumberFormatter instances, at least we should not allow serialization
for now.

We also remove some doubtful tests, which have been added[1] claiming
that they would crash the intl extension, but apparently no fix has
been applied, and the test cases have not been marked as XFAIL.

[1] <http://git.php.net/?p=php-src.git;a=commit;h=ed793b2a3f857fd49c0c1b036062140da5b3e674>

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Thu, 30 Jan 2020 09:08:21 +0000 (10:08 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix shift ub in mbstring
  Restore digit check in mb_decode_numericentity()

5 years agoFix shift ub in mbstring
Nikita Popov [Tue, 28 Jan 2020 15:18:46 +0000 (16:18 +0100)]
Fix shift ub in mbstring

Ideally "c" would be an unsigned integer...

5 years agoRestore digit check in mb_decode_numericentity()
Nikita Popov [Wed, 29 Jan 2020 15:40:13 +0000 (16:40 +0100)]
Restore digit check in mb_decode_numericentity()

I replaced it with a multiplication overflow check in
18599f9c52959b2e8cbfac57e278644499a3547d. However, we need both,
because the code for restoring the number can't handle numbers
with many leading zeros right now and I don't feel like teaching it.

5 years agoEnable ZipArchive::setMtime(Name|Index) on Windows
Christoph M. Becker [Wed, 29 Jan 2020 17:19:54 +0000 (18:19 +0100)]
Enable ZipArchive::setMtime(Name|Index) on Windows

These are enabled on non Windows systems as of zip 1.16.0 with libzip
>= 1.0.0.  Since Windows builds use at least libzip 1.4.0, we also
enable these methods there.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 29 Jan 2020 15:19:21 +0000 (16:19 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix mb_ord() crash if internal encoding not supported

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Wed, 29 Jan 2020 15:19:14 +0000 (16:19 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix mb_ord() crash if internal encoding not supported

5 years agoFix mb_ord() crash if internal encoding not supported
Nikita Popov [Wed, 29 Jan 2020 15:17:30 +0000 (16:17 +0100)]
Fix mb_ord() crash if internal encoding not supported

enc_name can be NULL here. Take the name from the mbfl_encoding
instead.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 29 Jan 2020 15:08:55 +0000 (16:08 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Better overflow check for entity decoding

5 years agoBetter overflow check for entity decoding
Nikita Popov [Wed, 29 Jan 2020 13:22:45 +0000 (14:22 +0100)]
Better overflow check for entity decoding

Check for multiplication overflow rather than number of digits.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 29 Jan 2020 15:05:47 +0000 (16:05 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Reset MBREX(search_re) in RSHUTDOWN

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Wed, 29 Jan 2020 15:05:38 +0000 (16:05 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Reset MBREX(search_re) in RSHUTDOWN

5 years agoReset MBREX(search_re) in RSHUTDOWN
Nikita Popov [Wed, 29 Jan 2020 15:03:44 +0000 (16:03 +0100)]
Reset MBREX(search_re) in RSHUTDOWN

This is going to cause a segfault if reused in the next request.
To illustrate the issue, run these two scripts in sequence with
the built-in server:

// script1.php
mb_ereg_search_init('foobar');
mb_ereg_search('foo');

// script2.php
var_dump(mb_ereg_search_init("foobar"));
var_dump(mb_ereg_search_pos());

5 years agozip extension version is now 1.16.1
Remi Collet [Wed, 29 Jan 2020 13:26:03 +0000 (14:26 +0100)]
zip extension version is now 1.16.1

5 years agoMerge branch 'PHP-7.4'
Remi Collet [Wed, 29 Jan 2020 13:25:26 +0000 (14:25 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  zip: more constants

5 years agozip: more constants
Remi Collet [Wed, 29 Jan 2020 13:25:16 +0000 (14:25 +0100)]
zip: more constants

5 years agoMerge branch 'PHP-7.4'
Anatol Belski [Wed, 29 Jan 2020 12:40:09 +0000 (13:40 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Backport 7d2ef3d2e540885dec26d91dad061bff1621ad07 into 7.4

5 years agoBackport 7d2ef3d2e540885dec26d91dad061bff1621ad07 into 7.4
Anatol Belski [Wed, 29 Jan 2020 12:19:27 +0000 (13:19 +0100)]
Backport 7d2ef3d2e540885dec26d91dad061bff1621ad07 into 7.4

As the data structures are public, the fix for 64-bit consists
on replacing the blanket memcpy with individual assignments.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 29 Jan 2020 11:50:47 +0000 (12:50 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix use of mb_ereg_search_getregs() after invalid pattern

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Wed, 29 Jan 2020 11:50:40 +0000 (12:50 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix use of mb_ereg_search_getregs() after invalid pattern

5 years agoFix use of mb_ereg_search_getregs() after invalid pattern
Nikita Popov [Wed, 29 Jan 2020 11:49:28 +0000 (12:49 +0100)]
Fix use of mb_ereg_search_getregs() after invalid pattern

This segfaulted because we assumed that if there are matches,
there must be a regular expression as well.

5 years agoFix datatype
Anatol Belski [Wed, 29 Jan 2020 11:34:04 +0000 (12:34 +0100)]
Fix datatype

This has been introduced by 84b0d0fabaaf21ee056984a33b573121296af942.
Besides it causes runtime issues on POWER5 (and presumably later), the
implementation would expect this array to consist on 32-bit integers.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 29 Jan 2020 11:22:58 +0000 (12:22 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix length inconsistency in mb_convert_encoding

5 years agoFix length inconsistency in mb_convert_encoding
Nikita Popov [Wed, 29 Jan 2020 11:19:28 +0000 (12:19 +0100)]
Fix length inconsistency in mb_convert_encoding

Don't mix strlen() and ZSTR_LEN(). If the encoding contains a
NULL byte, this will overflow the buffer.

NULL bytes will still make this behave oddly because the consuming
code will cut off the string there, but let's address that in master...

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 29 Jan 2020 10:49:27 +0000 (11:49 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix recovery of large entities in mb_decode_numericentity()

5 years agoFix recovery of large entities in mb_decode_numericentity()
Nikita Popov [Wed, 29 Jan 2020 10:44:56 +0000 (11:44 +0100)]
Fix recovery of large entities in mb_decode_numericentity()

Make sure we don't overflow the integer.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 29 Jan 2020 10:16:38 +0000 (11:16 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Use "%define parse.error verbose"

5 years agoUse "%define parse.error verbose"
Akim Demaille [Tue, 28 Jan 2020 19:41:56 +0000 (20:41 +0100)]
Use "%define parse.error verbose"

The YYERROR_VERBOSE macro will no longer be supported in Bison 3.6.
It was superseded by the "%error-verbose" directive in Bison 1.875
(2003-01-01).  Bison 2.6 (2012-07-19) clearly announced that support
for YYERROR_VERBOSE would be removed.  Note that since Bison 3.0
(2013-07-25), "%error-verbose" is deprecated in favor of "%define
parse.error verbose".

Closes GH-5125.

5 years agoMerge branch 'PHP-7.4'
Dmitry Stogov [Wed, 29 Jan 2020 09:15:34 +0000 (12:15 +0300)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fixed bug #79092 (Building with clang+lld-9 results in a broken PHP binary)

5 years agoFixed bug #79092 (Building with clang+lld-9 results in a broken PHP binary)
Dmitry Stogov [Wed, 29 Jan 2020 09:15:03 +0000 (12:15 +0300)]
Fixed bug #79092 (Building with clang+lld-9 results in a broken PHP binary)

5 years agoMerge branch 'PHP-7.4'
Máté Kocsis [Tue, 28 Jan 2020 17:51:00 +0000 (18:51 +0100)]
Merge branch 'PHP-7.4'

* Fix #78666 mysqli_options generates Warning on var_dump()

5 years agoFix #78666 mysqli_options generates Warning on var_dump()
Máté Kocsis [Fri, 24 Jan 2020 19:08:32 +0000 (20:08 +0100)]
Fix #78666 mysqli_options generates Warning on var_dump()

Closes GH-5121

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Tue, 28 Jan 2020 16:40:07 +0000 (17:40 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix memory leak in mb_str_split

5 years agoFix memory leak in mb_str_split
Nikita Popov [Tue, 28 Jan 2020 16:39:37 +0000 (17:39 +0100)]
Fix memory leak in mb_str_split

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Tue, 28 Jan 2020 16:17:07 +0000 (17:17 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix mysqli_get_warnings() with multi queries

5 years agoFix mysqli_get_warnings() with multi queries
Nikita Popov [Tue, 28 Jan 2020 16:12:45 +0000 (17:12 +0100)]
Fix mysqli_get_warnings() with multi queries

In this case warning_count may be non-zero, but php_get_warnings()
may still return no warnings. In this case we should return false
rather than returning a corrupted mysqli_warning object.

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Tue, 28 Jan 2020 14:37:51 +0000 (15:37 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #79174: cookie values with spaces fail to round-trip

5 years agoFix #79174: cookie values with spaces fail to round-trip
Christoph M. Becker [Tue, 28 Jan 2020 14:11:59 +0000 (15:11 +0100)]
Fix #79174: cookie values with spaces fail to round-trip

The fix for bug #78929 disabled the conversion of spaces in cookie
values to plus signs, but failed to adapt `php_setcookie()`
accordingly, so that it uses raw URL encoding as well.

5 years agoAvoid shift UB for large arrays
Nikita Popov [Tue, 28 Jan 2020 14:33:33 +0000 (15:33 +0100)]
Avoid shift UB for large arrays

Don't shift into the sign bit.

5 years agoOnly fetch to_encoding once in mb_convert_encoding()
Nikita Popov [Tue, 28 Jan 2020 14:12:24 +0000 (15:12 +0100)]
Only fetch to_encoding once in mb_convert_encoding()

Instead of doing it on every conversion. This is both more efficient
and avoids generating multiple warnings.

5 years agoMake BG(syslog_device) per request
Nikita Popov [Tue, 28 Jan 2020 13:42:19 +0000 (14:42 +0100)]
Make BG(syslog_device) per request

This is not supposed to be retained across requests. Explicitly
free it at the end of a request, and use the per-request allocator.

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Tue, 28 Jan 2020 12:35:20 +0000 (13:35 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Enable support for LIBZIP_VERSION

5 years agoEnable support for LIBZIP_VERSION
Christoph M. Becker [Tue, 28 Jan 2020 12:30:53 +0000 (13:30 +0100)]
Enable support for LIBZIP_VERSION

This is already supported by non Windows builds for libzip >= 1.3.1,
and since we're using at least libzip 1.4.0 on Windows, we should
support it there as well.

5 years agoFix rel_date leak on DateInterval construction failure
Nikita Popov [Tue, 28 Jan 2020 12:11:49 +0000 (13:11 +0100)]
Fix rel_date leak on DateInterval construction failure

5 years agoThrow an exception if default_dir not set, but required
Nikita Popov [Tue, 28 Jan 2020 11:33:58 +0000 (12:33 +0100)]
Throw an exception if default_dir not set, but required

Previously the RETURN_THROWS() assertion failed for this case.

5 years agozip: fix lib check
Remi Collet [Tue, 28 Jan 2020 10:32:42 +0000 (11:32 +0100)]
zip: fix lib check

5 years agoPerform map ptr base arithmetic through uintptr_t
Nikita Popov [Tue, 28 Jan 2020 10:23:16 +0000 (11:23 +0100)]
Perform map ptr base arithmetic through uintptr_t

Adding an offset to the NULL pointer is undefined behavior.
Avoid this by performing arithmetic on uintptr_t instead.

5 years agoDon't index NULL pointer when fetching non-existent constant
Nikita Popov [Tue, 28 Jan 2020 10:16:53 +0000 (11:16 +0100)]
Don't index NULL pointer when fetching non-existent constant

5 years ago- bump zip extension version to 1.16.0 - add ZipArchive::setMtimeName and ZipArchive...
Remi Collet [Tue, 28 Jan 2020 09:52:09 +0000 (10:52 +0100)]
- bump zip extension version to 1.16.0 - add ZipArchive::setMtimeName and ZipArchive::setMtimeIndex methods

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Tue, 28 Jan 2020 09:44:37 +0000 (10:44 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fixed bug #78989

5 years agoFixed bug #78989
Nikita Popov [Tue, 28 Jan 2020 09:41:11 +0000 (10:41 +0100)]
Fixed bug #78989

Always operate on copies of the functions, so we don't reference
temporary trait methods that have gone out of scope.

This could be more efficient, but doing an allocated copy only when
strictly necessary turned out to be somewhat tricky.

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Tue, 28 Jan 2020 09:40:00 +0000 (10:40 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #76584: PharFileInfo::decompress not working

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Tue, 28 Jan 2020 09:32:26 +0000 (10:32 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #76584: PharFileInfo::decompress not working

5 years agoFix #76584: PharFileInfo::decompress not working
Christoph M. Becker [Sun, 26 Jan 2020 12:33:07 +0000 (13:33 +0100)]
Fix #76584: PharFileInfo::decompress not working

We actually have to decompress, when told to do so.

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Tue, 28 Jan 2020 08:19:45 +0000 (09:19 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #79172: STRUCT_OFFSET() relies on undefined behavior

5 years agoFix #79172: STRUCT_OFFSET() relies on undefined behavior
Christoph M. Becker [Tue, 28 Jan 2020 08:15:23 +0000 (09:15 +0100)]
Fix #79172: STRUCT_OFFSET() relies on undefined behavior

Since this pattern is understood by compilers, not a real issue, but
certainly cleaner this way.

5 years agoConvert ZEND_ECHO operand to string after sccp
Tyson Andre [Sun, 26 Jan 2020 18:05:34 +0000 (13:05 -0500)]
Convert ZEND_ECHO operand to string after sccp

And filter out echoes of the empty string (e.g. false/null)

Split out of #5097 (on GitHub)

Closes GH-5118

5 years agoConvert some warnings into ValueErrors in the standard file extension
George Peter Banyard [Wed, 11 Dec 2019 20:57:57 +0000 (21:57 +0100)]
Convert some warnings into ValueErrors in the standard file extension

Closes GH-5007

5 years agoMerge branch 'PHP-7.4'
Remi Collet [Mon, 27 Jan 2020 15:48:54 +0000 (16:48 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  - bump zip extension version to 1.15.6 - add ZipArchive::LIBZIP_VERSION - skip bug53885.phpt with libzip 1.6.0 (empty file is no more valid archive)

5 years ago- bump zip extension version to 1.15.6
Remi Collet [Mon, 27 Jan 2020 15:47:28 +0000 (16:47 +0100)]
- bump zip extension version to 1.15.6
- add ZipArchive::LIBZIP_VERSION
- skip bug53885.phpt with libzip 1.6.0 (empty file is no more valid archive)

5 years agoRemove state pointer argument from php_strip_tags
Nikita Popov [Mon, 27 Jan 2020 15:13:36 +0000 (16:13 +0100)]
Remove state pointer argument from php_strip_tags

5 years agoMerge branch 'PHP-7.4'
Máté Kocsis [Mon, 27 Jan 2020 13:04:19 +0000 (14:04 +0100)]
Merge branch 'PHP-7.4'

5 years agoFix #78969 Make PASSWORD_DEFAULT match PASSWORD_BCRYPT instead of being null
Máté Kocsis [Wed, 22 Jan 2020 12:33:11 +0000 (13:33 +0100)]
Fix #78969 Make PASSWORD_DEFAULT match PASSWORD_BCRYPT instead of being null

It was an unintentional BC break.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Mon, 27 Jan 2020 12:32:51 +0000 (13:32 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix bug #78323: Code 0 is returned on invalid options

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Mon, 27 Jan 2020 12:32:29 +0000 (13:32 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix bug #78323: Code 0 is returned on invalid options

5 years agoFix bug #78323: Code 0 is returned on invalid options
Ivan Mikheykin [Fri, 17 Jan 2020 19:26:35 +0000 (22:26 +0300)]
Fix bug #78323: Code 0 is returned on invalid options

Set CLI exit code to 1 when invalid parameters are passed,
and print error to stderr.

5 years ago[skip ci] Fix typos in NEWS
Tyson Andre [Sun, 26 Jan 2020 16:53:42 +0000 (11:53 -0500)]
[skip ci] Fix typos in NEWS

5 years agoFix typo [ci skip]
Markus Staab [Sat, 25 Jan 2020 11:40:22 +0000 (12:40 +0100)]
Fix typo [ci skip]