]> granicus.if.org Git - php/log
php
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 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 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 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 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 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 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.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.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 agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Mon, 20 Apr 2020 08:26:11 +0000 (10:26 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #79497: Fix php_openssl_subtract_timeval()

4 years agoFix #79497: Fix php_openssl_subtract_timeval()
Joe Cai [Sun, 19 Apr 2020 23:03:11 +0000 (09:03 +1000)]
Fix #79497: Fix php_openssl_subtract_timeval()

I stumbled upon this while debugging a strange issue with
stream_socket_client() where it randomly throws out errors when
the connection timeout is set to below 1s. The logic to calculate
time difference in php_openssl_subtract_timeval() is wrong when
a.tv_usec < b.tv_usec, causing connection errors before the timeout
is reached.

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Dmitry Stogov [Fri, 17 Apr 2020 11:56:01 +0000 (14:56 +0300)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  zend_timeout() may access EX(opline)

4 years agozend_timeout() may access EX(opline)
Dmitry Stogov [Fri, 17 Apr 2020 11:55:14 +0000 (14:55 +0300)]
zend_timeout() may access EX(opline)

4 years agoFix bug #79336
Nikita Popov [Thu, 16 Apr 2020 09:52:37 +0000 (11:52 +0200)]
Fix bug #79336

Make reading of floats and doubles host-endian independent.

4 years agoMove test to its folder
Gabriel Caruso [Thu, 16 Apr 2020 09:38:27 +0000 (11:38 +0200)]
Move test to its folder

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Thu, 16 Apr 2020 09:22:43 +0000 (11:22 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix MySQL local infile / attr handling on big endian systems

4 years agoFix MySQL local infile / attr handling on big endian systems
guirish [Fri, 10 Apr 2020 09:45:40 +0000 (05:45 -0400)]
Fix MySQL local infile / attr handling on big endian systems

Make sure pointer types match what is used by libmysql everywhere.

Closes GH-5380.

4 years agoFix directory clash in tempnam_variation4 test
Nikita Popov [Wed, 15 Apr 2020 09:25:06 +0000 (11:25 +0200)]
Fix directory clash in tempnam_variation4 test

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Wed, 15 Apr 2020 09:21:34 +0000 (11:21 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fixed bug #79477

4 years agoFixed bug #79477
Nikita Popov [Wed, 15 Apr 2020 09:20:33 +0000 (11:20 +0200)]
Fixed bug #79477

Make sure to deindirect properties when creating array.

4 years agoFix #79472: ext/ffi/tests/040.phpt TC fails on Big endian arch
Christoph M. Becker [Mon, 13 Apr 2020 21:24:40 +0000 (23:24 +0200)]
Fix #79472: ext/ffi/tests/040.phpt TC fails on Big endian arch

For now we are choosing the simplest solution, namely to skip the test
on big-endian architectures.

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Tue, 14 Apr 2020 16:19:16 +0000 (18:19 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Add missing CVE

4 years agoAdd missing CVE
Christoph M. Becker [Tue, 14 Apr 2020 16:18:18 +0000 (18:18 +0200)]
Add missing CVE

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Sara Golemon [Tue, 14 Apr 2020 14:32:21 +0000 (10:32 -0400)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fixed bug #79468
  NEWS

4 years agoMerge branch 'PHP-7.2' into PHP-7.3
Sara Golemon [Tue, 14 Apr 2020 14:31:35 +0000 (10:31 -0400)]
Merge branch 'PHP-7.2' into PHP-7.3

* PHP-7.2:
  Fixed bug #79468
  NEWS

4 years agoFixed bug #79468
dinosaur [Mon, 13 Apr 2020 23:46:34 +0000 (07:46 +0800)]
Fixed bug #79468

Close the stream filter resources when removing them from the stream.

4 years agoNEWS
Sara Golemon [Tue, 14 Apr 2020 14:25:37 +0000 (10:25 -0400)]
NEWS

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Tue, 14 Apr 2020 14:08:07 +0000 (16:08 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Don't leak peername if accept fails

4 years agoDon't leak peername if accept fails
Nikita Popov [Tue, 14 Apr 2020 14:05:57 +0000 (16:05 +0200)]
Don't leak peername if accept fails

Even if the accept fails, the peername may be populated.

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Tue, 14 Apr 2020 11:59:39 +0000 (13:59 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix test cases

4 years agoFix test cases
Christoph M. Becker [Tue, 14 Apr 2020 11:55:56 +0000 (13:55 +0200)]
Fix test cases

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Tue, 14 Apr 2020 10:00:02 +0000 (12:00 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fixed bug #79468

4 years agoFixed bug #79468
dinosaur [Mon, 13 Apr 2020 23:46:34 +0000 (07:46 +0800)]
Fixed bug #79468

Close the stream filter resources when removing them from the stream.

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Tue, 14 Apr 2020 06:55:48 +0000 (08:55 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Add NEWS entries [ci skip]

4 years agoAdd NEWS entries [ci skip]
Christoph M. Becker [Tue, 14 Apr 2020 06:53:35 +0000 (08:53 +0200)]
Add NEWS entries [ci skip]

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Stanislav Malyshev [Tue, 14 Apr 2020 04:09:15 +0000 (21:09 -0700)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix bug #79465 - use unsigneds as indexes.
  Fix bug #79330 - make all execution modes consistent in rejecting \0

4 years agoMerge branch 'PHP-7.2' into PHP-7.3
Stanislav Malyshev [Tue, 14 Apr 2020 04:09:08 +0000 (21:09 -0700)]
Merge branch 'PHP-7.2' into PHP-7.3

* PHP-7.2:
  Fix bug #79465 - use unsigneds as indexes.
  Fix bug #79330 - make all execution modes consistent in rejecting \0

4 years agoFix bug #79465 - use unsigneds as indexes.
Stanislav Malyshev [Tue, 14 Apr 2020 04:07:04 +0000 (21:07 -0700)]
Fix bug #79465 - use unsigneds as indexes.

4 years agoFix bug #79330 - make all execution modes consistent in rejecting \0
Stanislav Malyshev [Tue, 14 Apr 2020 04:00:44 +0000 (21:00 -0700)]
Fix bug #79330 - make all execution modes consistent in rejecting \0

4 years agoFixed bug #78434
Nikita Popov [Fri, 3 Apr 2020 08:06:41 +0000 (10:06 +0200)]
Fixed bug #78434

The DO_INIT flag, which will skip the first resume on a primed
generator, should always be set when starting to yield from a
new generator, not only when the yield from happens during priming.

4 years agoAdd php_cli_server_connect() helper
Nikita Popov [Wed, 8 Apr 2020 15:10:20 +0000 (17:10 +0200)]
Add php_cli_server_connect() helper

To encapsulate the repeated fsockopen() code.

This gives us a chance to control the timeout in one place:
Raise it to one second.

4 years agoMake mysqli_poll test more deterministic
Nikita Popov [Wed, 8 Apr 2020 14:36:01 +0000 (16:36 +0200)]
Make mysqli_poll test more deterministic

Handle errors appearing in different order.

4 years agoRelax overly strict test expectation
Christoph M. Becker [Wed, 8 Apr 2020 09:29:49 +0000 (11:29 +0200)]
Relax overly strict test expectation

There is no reason to expect a `1` after the PID; neither the session
ID nor the memory usage are required to contain one.  Actually, we just
want to verify here, that the process with the $child_pid is running,
and is a php.exe process.

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

* PHP-7.3:
  Fix memory leak introduced by fixing bug #78221

4 years agoFix memory leak introduced by fixing bug #78221
Christoph M. Becker [Wed, 8 Apr 2020 08:35:54 +0000 (10:35 +0200)]
Fix memory leak introduced by fixing bug #78221

We have to free the retrieved text content; to keep the code readable,
we extract a helper function to check for empty nodes.  Unfortunately,
we cannot use xmlIsBlankNode(), because that also recognizes whitespace
only text content.

We also make sure to properly handle NULL returns from
xmlNodeGetContent().

4 years agoFix test
Nikita Popov [Wed, 8 Apr 2020 07:41:14 +0000 (09:41 +0200)]
Fix test

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
George Peter Banyard [Tue, 7 Apr 2020 20:27:00 +0000 (22:27 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Revert "Went to fast and forgot to update tests"
  Revert "Fix Bug #79448 0 is a valid Unicode codepoint, but mb_substitute_character(0) fails"

4 years agoRevert "Went to fast and forgot to update tests"
George Peter Banyard [Tue, 7 Apr 2020 20:24:40 +0000 (22:24 +0200)]
Revert "Went to fast and forgot to update tests"

This reverts commit 656eac74fa6074aebc087bb73d2e4651f7dc8c9e.

4 years agoRevert "Fix Bug #79448 0 is a valid Unicode codepoint, but mb_substitute_character...
George Peter Banyard [Tue, 7 Apr 2020 20:23:24 +0000 (22:23 +0200)]
Revert "Fix Bug #79448 0 is a valid Unicode codepoint, but mb_substitute_character(0) fails"

This commit brings some substantial changes in behaviour due to the weird implementation.
This will be fixed in master due to BC concerns.

This reverts commit 1333b46d6dc0c293c1fd626803f91bc69743eb79.

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Tue, 7 Apr 2020 11:05:37 +0000 (13:05 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #78221: DOMNode::normalize() doesn't remove empty text nodes

4 years agoFix #78221: DOMNode::normalize() doesn't remove empty text nodes
Christoph M. Becker [Wed, 11 Mar 2020 12:02:09 +0000 (13:02 +0100)]
Fix #78221: DOMNode::normalize() doesn't remove empty text nodes

If a text node is not followed by another text node, we remove it, if
its textContent is empty.

4 years agoFix #69264: __debugInfo() ignored while extending SPL classes
Christoph M. Becker [Mon, 6 Apr 2020 09:02:15 +0000 (11:02 +0200)]
Fix #69264: __debugInfo() ignored while extending SPL classes

We actually implement `::__debugInfo()` and drop the `get_debug_info()`
handlers of all relevant SPL classes.  This is cleaner and gives more
flexibility regarding overriding the functionality in descendant
classes.

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
George Peter Banyard [Fri, 3 Apr 2020 20:10:56 +0000 (22:10 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

4 years agoWent to fast and forgot to update tests
George Peter Banyard [Fri, 3 Apr 2020 20:03:00 +0000 (22:03 +0200)]
Went to fast and forgot to update tests

However due to the really lax conversion to integer all strings pass as 0

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
George Peter Banyard [Fri, 3 Apr 2020 19:28:07 +0000 (21:28 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

4 years agoFix Bug #79448 0 is a valid Unicode codepoint, but mb_substitute_character(0) fails
George Peter Banyard [Fri, 3 Apr 2020 19:16:04 +0000 (21:16 +0200)]
Fix Bug #79448 0 is a valid Unicode codepoint, but mb_substitute_character(0) fails

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Fri, 3 Apr 2020 08:06:09 +0000 (10:06 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix incorrect free for last_message

4 years agoFix incorrect free for last_message
Qianqian Bu [Fri, 3 Apr 2020 07:44:41 +0000 (15:44 +0800)]
Fix incorrect free for last_message

In commit a7305eb539596e175bd6c3ae9a20953358c5d677 the last_message
field of the connection object was changed to be always non-persistent.
But there is a place on change_user path that still treats it
depending on conn->persistent flag. This will cause PHP crash after
com_change_user success when there is last_message set

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Thu, 2 Apr 2020 14:34:21 +0000 (16:34 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fixed bug #79434

4 years agoFixed bug #79434
Nikita Popov [Thu, 2 Apr 2020 14:32:57 +0000 (16:32 +0200)]
Fixed bug #79434

4 years agoSkip fpm tests not designed to be run as root
Matteo Beccati [Wed, 1 Apr 2020 16:28:34 +0000 (18:28 +0200)]
Skip fpm tests not designed to be run as root

When running as root with TEST_FPM_RUN_AS_ROOT=1

4 years agoAllow fpm tests to be run with long socket path
Matteo Beccati [Wed, 1 Apr 2020 16:14:25 +0000 (18:14 +0200)]
Allow fpm tests to be run with long socket path

Socket path is restricted to ~100 bytes, so we can use
the system temp dir if the path ends up too long.

4 years agoEnable error diagnostic for check_default_conf_path.phpt
Christoph M. Becker [Wed, 1 Apr 2020 17:20:35 +0000 (19:20 +0200)]
Enable error diagnostic for check_default_conf_path.phpt

Otherwise we have no clue why the test failed, if the regex didn't
match.

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Wed, 1 Apr 2020 12:21:59 +0000 (14:21 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix literal compaction collision between string and double

4 years agoFix literal compaction collision between string and double
Nikita Popov [Wed, 1 Apr 2020 12:20:59 +0000 (14:20 +0200)]
Fix literal compaction collision between string and double

For the sake of simplicity I'm using a separate hashtable, rather
than trying to do hash perturabation on the double strings.

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Wed, 1 Apr 2020 07:28:39 +0000 (09:28 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Add NEWS entryc [ci skip]

4 years agoAdd NEWS entryc [ci skip]
Christoph M. Becker [Wed, 1 Apr 2020 07:26:20 +0000 (09:26 +0200)]
Add NEWS entryc [ci skip]

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
George Peter Banyard [Wed, 1 Apr 2020 02:34:09 +0000 (04:34 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

4 years agoFix bug 79441
George Peter Banyard [Wed, 1 Apr 2020 02:29:20 +0000 (04:29 +0200)]
Fix bug 79441

4 years agoThe 7.4 branch is now for 7.4.6
Derick Rethans [Tue, 31 Mar 2020 13:57:12 +0000 (14:57 +0100)]
The 7.4 branch is now for 7.4.6

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Tue, 31 Mar 2020 08:24:15 +0000 (10:24 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Next is 7.3.18

4 years agoNext is 7.3.18
Christoph M. Becker [Tue, 31 Mar 2020 08:22:55 +0000 (10:22 +0200)]
Next is 7.3.18

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Tue, 31 Mar 2020 06:39:34 +0000 (08:39 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #79413: session_create_id() fails for active sessions

4 years agoFix #79413: session_create_id() fails for active sessions
Christoph M. Becker [Thu, 26 Mar 2020 18:01:33 +0000 (19:01 +0100)]
Fix #79413: session_create_id() fails for active sessions

The comment on `PS_VALIDATE_SID_FUNC(files)` is very clear that the
function is supposed to return `SUCCESS` if the session already exists.
So to detect a collision, we have to check for `SUCCESS`, not
`FAILURE`.

We also fix the wrong condition in session_regenerate_id() as well.

4 years agoDon't check directory nlink in stat tests
Nikita Popov [Mon, 30 Mar 2020 08:52:25 +0000 (10:52 +0200)]
Don't check directory nlink in stat tests

It seems like on many filesystems nlink for directories is the
number of subdirectories (plus two, due to . and ..). However,
this is not a POSIX requirement, and some filesystems don't
implement it this way. This seems to be the case for whatever is
used on the Travis AArch64 builders now.

4 years agoFix #74940: DateTimeZone loose comparison always true
Christoph M. Becker [Wed, 4 Mar 2020 18:20:10 +0000 (19:20 +0100)]
Fix #74940: DateTimeZone loose comparison always true

Since `DateTimeZone` does not implement a `compare_objects` handler,
nor has any properties, two `DateTimeZone` instances always compare as
being equal, even if they designate totally different timezones.  Even
worse, after calling `var_dump()` on these objects, the actual
comparison may yield a correct result.

We therefore introduce a `compare_objects` handlers, which prevents
different behavior before/after `var_dump()`, and which allows us to
clearly define the intended semantics.

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Mon, 30 Mar 2020 06:57:29 +0000 (08:57 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #79427: Integer Overflow in shmop_open()

4 years agoFix #79427: Integer Overflow in shmop_open()
Christoph M. Becker [Sun, 29 Mar 2020 14:56:57 +0000 (16:56 +0200)]
Fix #79427: Integer Overflow in shmop_open()

If `shm.shm_segsz > ZEND_LONG_MAX` the assignment to `shmop->size` a
few lines below would overflow, so we catch that early and bail out if
necessary.

4 years agoAllow numeric [UG]ID in FPM listen.{owner,group}
Andre Nathan [Tue, 4 Feb 2020 12:53:16 +0000 (09:53 -0300)]
Allow numeric [UG]ID in FPM listen.{owner,group}

4 years agoNEWS
Remi Collet [Sun, 29 Mar 2020 12:23:28 +0000 (14:23 +0200)]
NEWS

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Remi Collet [Sun, 29 Mar 2020 12:23:03 +0000 (14:23 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #79424 ext/zip: don't use gl_pathc after call to globfree

4 years agoFix #79424 ext/zip: don't use gl_pathc after call to globfree
Max Rees [Fri, 27 Mar 2020 17:57:24 +0000 (12:57 -0500)]
Fix #79424 ext/zip: don't use gl_pathc after call to globfree

This breaks on Linux with the musl libc, since it zeroes out gl_pathc during
globfree.

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Thu, 26 Mar 2020 22:15:55 +0000 (23:15 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Add missing 'skip' to bug79332.phpt skip message

4 years agoAdd missing 'skip' to bug79332.phpt skip message
Lukas Berger [Thu, 26 Mar 2020 17:39:39 +0000 (10:39 -0700)]
Add missing 'skip' to bug79332.phpt skip message

The skip message must start with the word 'skip', otherwise the test will not be skipped.

*Before:*
Running selected tests.
TEST 1/1 [ext/com_dotnet/tests/bug79332.phpt]
========DIFF========
001+ Fatal error: Uncaught Error: Class 'COMPersistHelper' not found in /srv/php/ext/com_dotnet/tests/bug79332.php:2
001- A com_exception has been thrown
002+ Stack trace:
003+ #0 {main}
004+   thrown in /srv/php/ext/com_dotnet/tests/bug79332.php on line 2
========DONE========
FAIL Bug #79332 (php_istreams are never freed) [ext/com_dotnet/tests/bug79332.phpt]

*After:*
Running selected tests.
SKIP Bug #79332 (php_istreams are never freed) [ext/com_dotnet/tests/bug79332.phpt] reason: com_dotnet extension not available

4 years agoExplicitly declare the char as signed in zend_ffi_val.
George Peter Banyard [Thu, 26 Mar 2020 02:20:10 +0000 (03:20 +0100)]
Explicitly declare the char as signed in zend_ffi_val.

This causes issues down the line as char are unsigned on some platforms,
e.g. ARM and cause a [-Wtype-limits] warning to be emitted.

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Dmitry Stogov [Wed, 25 Mar 2020 14:31:33 +0000 (17:31 +0300)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fixed bug #79412 (Opcache chokes and uses 100% CPU on specific script).

4 years agoFixed bug #79412 (Opcache chokes and uses 100% CPU on specific script).
Dmitry Stogov [Wed, 25 Mar 2020 14:31:06 +0000 (17:31 +0300)]
Fixed bug #79412 (Opcache chokes and uses 100% CPU on specific script).

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Wed, 25 Mar 2020 09:50:57 +0000 (10:50 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix bug #79410 (system() swallows last chunk if it is exactly 4095 bytes without newline)

4 years agoFix bug #79410 (system() swallows last chunk if it is exactly 4095 bytes without...
Christian Schneider [Tue, 24 Mar 2020 15:43:17 +0000 (16:43 +0100)]
Fix bug #79410 (system() swallows last chunk if it is exactly 4095 bytes without newline)

Closes GH-5292.

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Mon, 23 Mar 2020 16:14:16 +0000 (17:14 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Add test file

4 years agoAdd test file
Nikita Popov [Mon, 23 Mar 2020 16:13:57 +0000 (17:13 +0100)]
Add test file

Forgot the git add again...

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Mon, 23 Mar 2020 16:12:12 +0000 (17:12 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Handle NULL caller_call_opline

4 years agoHandle NULL caller_call_opline
Nikita Popov [Mon, 23 Mar 2020 16:10:54 +0000 (17:10 +0100)]
Handle NULL caller_call_opline

This can happen if there is an EXIT in the call arguments, in which
case the DO_CALL opcode may be eliminated as unreachable.

4 years agoFix leak on Windows as well
Christoph M. Becker [Mon, 23 Mar 2020 15:31:45 +0000 (16:31 +0100)]
Fix leak on Windows as well

Cf. <http://git.php.net/?p=php-src.git;a=commit;h=db08ef0d3274b239a6b9e68d71d02bb6acb71d82>

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Mon, 23 Mar 2020 15:23:33 +0000 (16:23 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix test for Windows

4 years agoFix test for Windows
Christoph M. Becker [Mon, 23 Mar 2020 15:19:25 +0000 (16:19 +0100)]
Fix test for Windows

Windows filenames may very well contain a colon, so we adjust the test
accordingly.

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Mon, 23 Mar 2020 13:13:24 +0000 (14:13 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #79200: Some iconv functions cut Windows-1258