]> granicus.if.org Git - php/log
php
6 years agoValidate length on socket_write
Thiago Carvalho [Sun, 21 Oct 2018 19:42:29 +0000 (21:42 +0200)]
Validate length on socket_write

6 years agoFix #77141: Signedness issue in SOAP when precision=-1
Christoph M. Becker [Mon, 12 Nov 2018 22:00:25 +0000 (23:00 +0100)]
Fix #77141: Signedness issue in SOAP when precision=-1

According to php_gcvt(), we assume at most 17 fractional digits for
negative precision.

6 years agoFix #76348: WSDL_CACHE_MEMORY causes Segmentation fault
Christoph M. Becker [Sun, 4 Nov 2018 15:40:27 +0000 (16:40 +0100)]
Fix #76348: WSDL_CACHE_MEMORY causes Segmentation fault

“Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end.”

6 years agoUpdated to version 2018.7 (2018g)
Derick Rethans [Tue, 30 Oct 2018 11:25:45 +0000 (11:25 +0000)]
Updated to version 2018.7 (2018g)

6 years ago[ci skip] Update NEWS
Peter Kokot [Mon, 29 Oct 2018 23:22:03 +0000 (00:22 +0100)]
[ci skip] Update NEWS

6 years agofix bug #77079
Jon Allen [Mon, 29 Oct 2018 13:44:37 +0000 (14:44 +0100)]
fix bug #77079

6 years agoFixed bug #77058
Nikita Popov [Thu, 25 Oct 2018 14:25:54 +0000 (16:25 +0200)]
Fixed bug #77058

Account for the fact that undef must be interpreted as null for
the purposes of INC/DEC inference.

6 years agoImprove "narrowing" error message
Nikita Popov [Thu, 25 Oct 2018 14:18:10 +0000 (16:18 +0200)]
Improve "narrowing" error message

By including the opcode name.

6 years agobump versions
Joe Watkins [Wed, 24 Oct 2018 06:43:27 +0000 (08:43 +0200)]
bump versions

6 years agoUpdated to version 2018.6 (2018f)
Derick Rethans [Mon, 22 Oct 2018 11:05:39 +0000 (12:05 +0100)]
Updated to version 2018.6 (2018f)

6 years agoFix tests for ICU 63.1
Anatol Belski [Sat, 20 Oct 2018 21:02:06 +0000 (23:02 +0200)]
Fix tests for ICU 63.1

The most of change is U+00A0 vs. new U+202F used in some outputs.

6 years ago[ci skip] Update NEWS
Peter Kokot [Sat, 20 Oct 2018 07:48:50 +0000 (09:48 +0200)]
[ci skip] Update NEWS

6 years agoFix #77041: buildconf should output error messages to stderr
Mizunashi Mana [Sat, 20 Oct 2018 07:42:56 +0000 (09:42 +0200)]
Fix #77041: buildconf should output error messages to stderr

6 years ago[ci skip] Update NEWS
Peter Kokot [Thu, 18 Oct 2018 22:06:11 +0000 (00:06 +0200)]
[ci skip] Update NEWS

6 years agoFix #77035: The phpize and ./configure create redundant .deps file
Peter Kokot [Thu, 18 Oct 2018 22:02:09 +0000 (00:02 +0200)]
Fix #77035: The phpize and ./configure create redundant .deps file

The `.deps` file(s) was once used by Automake and created to write
dependencies to it. The file creation has been removed via the commit
779c11af21cf8a627b8f2f2edef9e9073c76ed94.

The phpize and ./configure script create a redundant .deps file in a
PECL extension directory which might cause confusions why is it used.
Today it is no longer relevant so this redundant artefact can be
removed in the phpize configure script.

6 years agoFix test when it's run on another drive
Anatol Belski [Wed, 17 Oct 2018 22:43:24 +0000 (00:43 +0200)]
Fix test when it's run on another drive

6 years agoFix #77027: tidy::getOptDoc() not available on Windows
Christoph M. Becker [Wed, 17 Oct 2018 14:27:07 +0000 (16:27 +0200)]
Fix #77027: tidy::getOptDoc() not available on Windows

We define the `HAVE_TIDYOPTGETDOC` macro unconditionally, since the
Windows PHP SDK ships libtidy 2009/04/06 or newer for a long time.

We do not add a regression test, since 021.phpt already tests
`tidy_get_opt_doc`, but has previously been skipped due to
unavailability of the function.

6 years agoAdd support for getting SKIP_TAGSTART and SKIP_WHITE options
Christoph M. Becker [Tue, 16 Oct 2018 16:47:31 +0000 (18:47 +0200)]
Add support for getting SKIP_TAGSTART and SKIP_WHITE options

When `XML_OPTION_SKIP_TAGSTART` and `XML_OPTION_SKIP_WHITE` had been
introduced[1], it had been overlooked to also support them for
`xml_parser_get_option()`.  We catch up on that.

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

6 years agoSync leading and final newlines in *.phpt sections
Peter Kokot [Mon, 15 Oct 2018 02:29:24 +0000 (04:29 +0200)]
Sync leading and final newlines in *.phpt sections

This patch adds missing newlines, trims multiple redundant final
newlines into a single one, and trims redundant leading newlines in all
*.phpt sections.

According to POSIX, a line is a sequence of zero or more non-' <newline>'
characters plus a terminating '<newline>' character. [1] Files should
normally have at least one final newline character.

C89 [2] and later standards [3] mention a final newline:
"A source file that is not empty shall end in a new-line character,
which shall not be immediately preceded by a backslash character."

Although it is not mandatory for all files to have a final newline
fixed, a more consistent and homogeneous approach brings less of commit
differences issues and a better development experience in certain text
editors and IDEs.

[1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206
[2] https://port70.net/~nsz/c/c89/c89-draft.html#2.1.1.2
[3] https://port70.net/~nsz/c/c99/n1256.html#5.1.1.2

6 years agoTrim trailing whitespace in *.phpt
Peter Kokot [Sun, 14 Oct 2018 13:37:22 +0000 (15:37 +0200)]
Trim trailing whitespace in *.phpt

6 years agoFix failing ext/session/tests due to final newlines
Peter Kokot [Sun, 14 Oct 2018 11:38:28 +0000 (13:38 +0200)]
Fix failing ext/session/tests due to final newlines

6 years agoSync leading and final newlines in source code files
Peter Kokot [Sun, 14 Oct 2018 10:51:01 +0000 (12:51 +0200)]
Sync leading and final newlines in source code files

This patch adds missing newlines, trims multiple redundant final
newlines into a single one, and trims redundant leading newlines.

According to POSIX, a line is a sequence of zero or more non-' <newline>'
characters plus a terminating '<newline>' character. [1] Files should
normally have at least one final newline character.

C89 [2] and later standards [3] mention a final newline:
"A source file that is not empty shall end in a new-line character,
which shall not be immediately preceded by a backslash character."

Although it is not mandatory for all files to have a final newline
fixed, a more consistent and homogeneous approach brings less of commit
differences issues and a better development experience in certain text
editors and IDEs.

[1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206
[2] https://port70.net/~nsz/c/c89/c89-draft.html#2.1.1.2
[3] https://port70.net/~nsz/c/c99/n1256.html#5.1.1.2

6 years agoFix failing tests/lang due to whitespace
Peter Kokot [Sat, 13 Oct 2018 13:22:49 +0000 (15:22 +0200)]
Fix failing tests/lang due to whitespace

6 years agoFix failing ext/zlib/tests due to whitespace
Peter Kokot [Sat, 13 Oct 2018 13:15:26 +0000 (15:15 +0200)]
Fix failing ext/zlib/tests due to whitespace

6 years agoTrim trailing whitespace in source code files
Peter Kokot [Sat, 13 Oct 2018 12:12:55 +0000 (14:12 +0200)]
Trim trailing whitespace in source code files

6 years agoConvert CRLF line endings to LF
Peter Kokot [Sat, 13 Oct 2018 09:21:27 +0000 (11:21 +0200)]
Convert CRLF line endings to LF

This patch simplifies line endings tracked in the Git repository and
syncs them to all include the LF style instead of the CRLF files.

Newline characters:
- LF (\n) (*nix and Mac)
- CRLF (\r\n) (Windows)
- CR (\r) (old Mac, obsolete)

To see which line endings are in the index and in the working copy the
following command can be used:
`git ls-files --eol`

Git additionally provides `.gitattributes` file to specify if some files
need to have specific line endings on all platforms (either CRLF or LF).

Changed files shouldn't cause issues on modern Windows platforms because
also Git can do output conversion is core.autocrlf=true is set on
Windows and use CRLF newlines in all files in the working tree.

Unless CRLF files are tracked specifically, Git by default tracks all
files in the index using LF newlines.

6 years agoFix #30875: xml_parse_into_struct() does not resolve entities
Christoph M. Becker [Tue, 9 Oct 2018 14:04:43 +0000 (16:04 +0200)]
Fix #30875: xml_parse_into_struct() does not resolve entities

Setting up an empty default handler is not only useless, but actually
harmful, since internal entity-references are not resolved anymore.
From the libexpat docs[1]:

| Setting the handler with this call has the side effect of
| turning off expansion of references to internally defined general
| entities. Instead these references are passed to the default
| handler.

[1] <https://www.xml.com/pub/1999/09/expat/reference.html#setdefhandler>

6 years agoFixed bug #76965 INI_SCANNER_RAW doesn't strip trailing whitespace
Pierrick Charron [Sat, 6 Oct 2018 14:42:05 +0000 (10:42 -0400)]
Fixed bug #76965 INI_SCANNER_RAW doesn't strip trailing whitespace

6 years agoFix #76954: apache_response_headers removes last character from header name
stodorovic [Tue, 2 Oct 2018 06:36:29 +0000 (08:36 +0200)]
Fix #76954: apache_response_headers removes last character from header name

6 years agoFix #75851: Year component overflow with date formats "c", "o", "r" and "y"
Adam Saponara [Wed, 11 Jul 2018 03:55:13 +0000 (23:55 -0400)]
Fix #75851: Year component overflow with date formats "c", "o", "r" and "y"

6 years agoRemove unstable dns tests
Pedro Magalhães [Fri, 5 Oct 2018 15:24:55 +0000 (16:24 +0100)]
Remove unstable dns tests

6 years ago[ci skip] Update NEWS
Anatol Belski [Fri, 5 Oct 2018 20:57:27 +0000 (22:57 +0200)]
[ci skip] Update NEWS

6 years agoAdd test for bug #76942
Anatol Belski [Fri, 5 Oct 2018 20:51:58 +0000 (22:51 +0200)]
Add test for bug #76942

6 years agoFixed Bug #76942 U_ARGUMENT_TYPE_MISMATCH
Anatol Belski [Fri, 5 Oct 2018 20:50:34 +0000 (22:50 +0200)]
Fixed Bug #76942 U_ARGUMENT_TYPE_MISMATCH

ref bug #74484

6 years agoFix #76972: FTP data truncation due to forceful ssl socket shutdown
Manuel Mausz [Thu, 4 Oct 2018 16:40:26 +0000 (18:40 +0200)]
Fix #76972: FTP data truncation due to forceful ssl socket shutdown

Do a correct bidirectional shutdown instead

6 years agoUpdate NEWS [ci skip]
Anatol Belski [Wed, 3 Oct 2018 16:48:40 +0000 (18:48 +0200)]
Update NEWS [ci skip]

6 years agoAvoid code duplication and don't miss env restore
Anatol Belski [Wed, 3 Oct 2018 12:32:52 +0000 (14:32 +0200)]
Avoid code duplication and don't miss env restore

6 years agoFixed bug #76948 Failed shutdown/reboot or end session in Windows
Anatol Belski [Wed, 3 Oct 2018 10:11:43 +0000 (12:11 +0200)]
Fixed bug #76948 Failed shutdown/reboot or end session in Windows

6 years agoReflection: Copy invoke function also in the variadic case
Nikita Popov [Wed, 3 Oct 2018 08:48:42 +0000 (10:48 +0200)]
Reflection: Copy invoke function also in the variadic case

It doesn't matter how the parameters are provided, we always have
to copy the trampoline invoke function.

6 years agoFixed bug #75479
Nikita Popov [Sun, 30 Sep 2018 18:05:30 +0000 (20:05 +0200)]
Fixed bug #75479

Wrap the zend_signal_init() call, so the hook arguments line up.

6 years agoFixed bug #76946
Nikita Popov [Fri, 28 Sep 2018 17:14:47 +0000 (19:14 +0200)]
Fixed bug #76946

6 years agoBump versions for 7.1.24-dev
Sara Golemon [Fri, 28 Sep 2018 15:31:22 +0000 (11:31 -0400)]
Bump versions for 7.1.24-dev

6 years agoFix test for release builds
Nikita Popov [Fri, 28 Sep 2018 11:39:43 +0000 (13:39 +0200)]
Fix test for release builds

6 years agoFixed bug #76846
Nikita Popov [Fri, 28 Sep 2018 10:56:47 +0000 (12:56 +0200)]
Fixed bug #76846

6 years agoFixed bug #76918 Repeated parameter name in arg info
Sara Golemon [Tue, 25 Sep 2018 15:18:24 +0000 (11:18 -0400)]
Fixed bug #76918 Repeated parameter name in arg info

6 years agoTerminate smart string correctly
Christopher Jones [Mon, 24 Sep 2018 10:52:58 +0000 (20:52 +1000)]
Terminate smart string correctly

This is related to Zend VM regression bug #75881.  The regression was fixed in the VM, so there is no user visible change from the termination correction.

6 years agoMake usable for PECL OCI8 release for PHP 7.x
Christopher Jones [Mon, 24 Sep 2018 10:05:54 +0000 (20:05 +1000)]
Make usable for PECL OCI8 release for PHP 7.x

6 years agoBackport master branch comment typo fix
Christopher Jones [Mon, 24 Sep 2018 07:06:29 +0000 (17:06 +1000)]
Backport master branch comment typo fix

6 years agoMake tests portable across PHP 7.x versions
Christopher Jones [Mon, 24 Sep 2018 07:01:13 +0000 (17:01 +1000)]
Make tests portable across PHP 7.x versions

6 years agoRemove $id from phpinfo as already done in PHP-7.3
Christopher Jones [Mon, 24 Sep 2018 06:52:17 +0000 (16:52 +1000)]
Remove $id from phpinfo as already done in PHP-7.3

6 years agoAnd strip trailing tabs too...
Christopher Jones [Mon, 24 Sep 2018 06:38:39 +0000 (16:38 +1000)]
And strip trailing tabs too...

6 years agoSync EXPECT usage with PHP-7.3
Christopher Jones [Mon, 24 Sep 2018 05:59:52 +0000 (15:59 +1000)]
Sync EXPECT usage with PHP-7.3

6 years agoRemove trailing whitespace to help keep branches in sync
Christopher Jones [Mon, 24 Sep 2018 03:27:27 +0000 (13:27 +1000)]
Remove trailing whitespace to help keep branches in sync

6 years agoRemove trailing whitespace to help keep branches in sycn
Christopher Jones [Sun, 23 Sep 2018 23:37:46 +0000 (09:37 +1000)]
Remove trailing whitespace to help keep branches in sycn

6 years agoFix #66828: iconv_mime_encode Q-encoding longer than it should be
Christoph M. Becker [Sat, 22 Sep 2018 13:20:20 +0000 (15:20 +0200)]
Fix #66828: iconv_mime_encode Q-encoding longer than it should be

Before the fix for bug 48289 has been applied, the algorithm to
construct a Q-encoded-word has been optimistic, i.e. try to encode as
many bytes that *may* fit in the remaining space, calculate the actual
length of the Q-encoded word, and if it's too long, try again with a
reduced size.  However, the fix for the mentioned bug replaced this by
a pessimistic algorithm, which always terminates[1] the for loop[2]
during the first iteration (which renders the following 3 lines as dead
code), and as such easily produces unnecessarily short encoded-words.
Instead the proper fix for the bug would have been to make sure that
`out_size` is always decremented, if the space isn't sufficient for the
encoded-word.

[1] <https://github.com/php/php-src/blob/php-7.3.0beta3/ext/iconv/iconv.c#L1421>
[2] <https://github.com/php/php-src/blob/php-7.3.0beta3/ext/iconv/iconv.c#L1360>

6 years agoFix getColumnMeta() test
Nikita Popov [Mon, 17 Sep 2018 14:36:05 +0000 (16:36 +0200)]
Fix getColumnMeta() test

Newer MySQL versions are stricter about invalid values. Three issues
are fixed:

* Don't use negative values with ZEROFILL. ZEROFILL implies UNSIGNED.
* Use a legal TIMESTAMP value. TIMESTAMP does not accept a Unix timestamp.
* Specify BIGINT values as strings, to avoid overflows.

This is a cherry-pick of d2dc0a32911c0e08986da799ce11e18c3fa5ca57 from master.

6 years agoFix intermittent failures in mysqli_stmt_bind_result_format.phpt
Nikita Popov [Wed, 19 Sep 2018 09:31:42 +0000 (11:31 +0200)]
Fix intermittent failures in mysqli_stmt_bind_result_format.phpt

There were two distinct issues here:
 * $trend was compared against 'NULL' using !=, which does not work
   as intended in the case where $trend==0.0.
 * current_targets was declared as double(17,0), which means that
   the fractional part was rounded, so that the same comparison in
   SQL (rounded) and in PHP (not rounded) did not necessarily
   match.

Please don't write mt_rand based tests, it takes ages to debug this
crap...

6 years agoFixed bug #76901
Nikita Popov [Wed, 19 Sep 2018 07:37:04 +0000 (09:37 +0200)]
Fixed bug #76901

get_method() may modify the object pointer passed to it if method
forwarding is used. In this case we do not want to modify the
passed zval, so make sure that we copy the object into a temporary
first.

6 years agoFix bug #75533: array_reduce is slow when $carry is large array
Manabu Matsui [Wed, 22 Nov 2017 02:07:15 +0000 (11:07 +0900)]
Fix bug #75533: array_reduce is slow when $carry is large array

6 years agoAdd spectre switch for suitable vc14 versions
Anatol Belski [Tue, 18 Sep 2018 08:43:52 +0000 (10:43 +0200)]
Add spectre switch for suitable vc14 versions

6 years agoFix 76480: Use curl_multi_wait() so that timeouts are respected
Pierrick Charron [Tue, 18 Sep 2018 00:28:44 +0000 (20:28 -0400)]
Fix 76480: Use curl_multi_wait() so that timeouts are respected

6 years agoSync version for vc++ 15.9
Anatol Belski [Thu, 13 Sep 2018 17:25:23 +0000 (19:25 +0200)]
Sync version for vc++ 15.9

6 years agoImprove error code matching
Anatol Belski [Wed, 12 Sep 2018 14:22:22 +0000 (16:22 +0200)]
Improve error code matching

6 years agoUpdate binary SDK version for AppVeyor
Anatol Belski [Wed, 12 Sep 2018 10:09:32 +0000 (12:09 +0200)]
Update binary SDK version for AppVeyor

6 years agoMerge branch 'PHP-7.0' into PHP-7.1
Ferenc Kovacs [Tue, 11 Sep 2018 22:02:18 +0000 (00:02 +0200)]
Merge branch 'PHP-7.0' into PHP-7.1

6 years agoMerge branch 'PHP-5.6' into PHP-7.0
Ferenc Kovacs [Tue, 11 Sep 2018 22:00:46 +0000 (00:00 +0200)]
Merge branch 'PHP-5.6' into PHP-7.0

6 years ago5.6.39 will be the next
Ferenc Kovacs [Tue, 11 Sep 2018 21:58:17 +0000 (23:58 +0200)]
5.6.39 will be the next

6 years agoMerge branch 'PHP-7.0' into PHP-7.1
Anatol Belski [Tue, 11 Sep 2018 05:00:48 +0000 (07:00 +0200)]
Merge branch 'PHP-7.0' into PHP-7.1

* PHP-7.0:
  7.0.33 next

6 years ago7.0.33 next
Anatol Belski [Tue, 11 Sep 2018 05:00:15 +0000 (07:00 +0200)]
7.0.33 next

6 years agoMerge branch 'PHP-7.0' into PHP-7.1
Anatol Belski [Mon, 10 Sep 2018 14:57:24 +0000 (16:57 +0200)]
Merge branch 'PHP-7.0' into PHP-7.1

* PHP-7.0:
  Sync NEWS [ci skip]

6 years agoSync NEWS [ci skip]
Anatol Belski [Mon, 10 Sep 2018 14:56:37 +0000 (16:56 +0200)]
Sync NEWS [ci skip]

6 years agoMerge branch 'PHP-7.0' into PHP-7.1
Stanislav Malyshev [Sun, 9 Sep 2018 19:29:23 +0000 (12:29 -0700)]
Merge branch 'PHP-7.0' into PHP-7.1

* PHP-7.0:
  Update NEWS
  Fix for bug #76582

6 years agoMerge branch 'PHP-5.6' into PHP-7.0
Stanislav Malyshev [Sun, 9 Sep 2018 19:27:44 +0000 (12:27 -0700)]
Merge branch 'PHP-5.6' into PHP-7.0

* PHP-5.6:
  Update NEWS
  Fix for bug #76582

6 years agoUpdate NEWS
Stanislav Malyshev [Sun, 9 Sep 2018 19:19:38 +0000 (12:19 -0700)]
Update NEWS

6 years agoFix for bug #76582
Stanislav Malyshev [Sun, 29 Jul 2018 05:16:29 +0000 (22:16 -0700)]
Fix for bug #76582

The brigade seems to end up in a messed up state if something fails
in shutdown, so we clean it up.

6 years agoFix ssl stream reneg limit test to print only after first renegotiation
Jakub Zelenka [Sun, 9 Sep 2018 17:53:37 +0000 (18:53 +0100)]
Fix ssl stream reneg limit test to print only after first renegotiation

It has been reported that in some setup the test does multiple
renegotiations which is allowed.

6 years agoFix #75273: php_zlib_inflate_filter() may not update bytes_consumed
Christoph M. Becker [Sat, 8 Sep 2018 16:27:57 +0000 (18:27 +0200)]
Fix #75273: php_zlib_inflate_filter() may not update bytes_consumed

Whenever we return with `PSFS_PASS_ON`, we need to update
`bytes_consumed` to not mislead the caller.  Instead of fixing the
respective `if` clauses, we eschew the early bail-outs to simplify the
code a bit.

6 years agoSync with recent changes to default libcurl build
Anatol Belski [Wed, 5 Sep 2018 15:40:25 +0000 (17:40 +0200)]
Sync with recent changes to default libcurl build

(cherry picked from commit a1ba3007a452fb2618526ed7159236362219a208)

6 years agoFix #74454: Wrong exception being thrown when using ReflectionMethod
Christoph M. Becker [Wed, 5 Sep 2018 13:05:19 +0000 (15:05 +0200)]
Fix #74454: Wrong exception being thrown when using ReflectionMethod

If zend_throw_exception_ex() already threw an exception, we should not
throw again.

6 years agoFix bug #74764 and add a test case
Ville Hukkamaki [Tue, 28 Aug 2018 21:26:13 +0000 (23:26 +0200)]
Fix bug #74764 and add a test case

6 years ago[ci skip] Update NEWS
Anatol Belski [Tue, 4 Sep 2018 09:01:24 +0000 (11:01 +0200)]
[ci skip] Update NEWS

6 years agoRevert all MySQL auth related changes
Nikita Popov [Tue, 4 Sep 2018 03:45:45 +0000 (05:45 +0200)]
Revert all MySQL auth related changes

Per bug #76651 these changes do not appear to work correctly in
some cases. As no immediate fix seems to be forthcoming, I'm
reverting these changes.

Revert "Fixed invalid free introduced by d6e81f0bfd0cb90586dd83d4fd47a4302605261a (avoid keeping "invalid" pointer)"

This reverts commit 11507c0e1bfa17a96480f3648397f6975c31551e.

Revert "Fix mysqlnd build without openssl"

This reverts commit 6c9db02ff7812c298d1e7e292ba731d9d3a66790.

Revert "Fix VC compilation as variable size array is not supported"

This reverts commit f96df64cb2219fda42ca875483f874cf3052647c.

Revert "Fix MySQL 8 auth"

This reverts commit d6e81f0bfd0cb90586dd83d4fd47a4302605261a.

6 years agoFix parenthesis warning
Nikita Popov [Tue, 4 Sep 2018 03:32:25 +0000 (05:32 +0200)]
Fix parenthesis warning

6 years agoFix bug #75481: makedev warning
Peter Kokot [Wed, 13 Jun 2018 02:36:55 +0000 (04:36 +0200)]
Fix bug #75481: makedev warning

To use makedev the sys/sysmacros.h needs to be included on newer
systems.

Cherry-picked from PHP-7.3.

6 years agoFixed bug #73457
Ville Hukkamaki [Fri, 24 Aug 2018 20:49:53 +0000 (22:49 +0200)]
Fixed bug #73457

Correctly report errors when opening FTP data connection.

6 years agoFixed bug #76832 ZendOPcache.MemoryBase periodically deleted by the OS
Anatol Belski [Mon, 3 Sep 2018 13:09:23 +0000 (15:09 +0200)]
Fixed bug #76832 ZendOPcache.MemoryBase periodically deleted by the OS

6 years agoFixed reference-countingin ZTS build.
Dmitry Stogov [Mon, 3 Sep 2018 07:20:40 +0000 (10:20 +0300)]
Fixed reference-countingin ZTS build.

6 years agoFix #75696: posix_getgrnam fails to print details of group
Christoph M. Becker [Fri, 24 Aug 2018 15:59:44 +0000 (17:59 +0200)]
Fix #75696: posix_getgrnam fails to print details of group

According to the POSIX specification of `getgrnam_r()` the result of
`sysconf(_SC_GETGR_R_SIZE_MAX)` is an initial value suggested for the
size of the buffer, and `ERANGE` signals that insufficient storage was
supplied.  So if we get `ERANGE`, we try again with a buffer twice as
big, and so on, instead of failing.

6 years agoFix stack underflow in phar
Anatol Belski [Mon, 6 Aug 2018 20:35:11 +0000 (22:35 +0200)]
Fix stack underflow in phar

The checks can issue reads below and above the temporary buffer. A read
itself doesn't seem dangerous, but the condition result can be
arbitrary. Such reads have to be avoided. Likely this patch should be
backported.

(cherry picked from commit b053beee7efb64b8e439fb3639de839e615ba89c)

6 years agofix double cast to int on 32-bit
Remi Collet [Wed, 29 Aug 2018 07:10:59 +0000 (09:10 +0200)]
fix double cast to int on 32-bit

6 years agoFixed incorrect ZEND_ACC_ARENA_ALLOCATED usage (it must be used only for internal...
Dmitry Stogov [Wed, 29 Aug 2018 20:40:17 +0000 (23:40 +0300)]
Fixed incorrect ZEND_ACC_ARENA_ALLOCATED usage (it must be used only for internal functions).

6 years agoPrep for 7.1.23
Sara Golemon [Wed, 29 Aug 2018 16:38:34 +0000 (12:38 -0400)]
Prep for 7.1.23

6 years agoFix #68180: iconv_mime_decode can return extra characters in a header
Christoph M. Becker [Sun, 26 Aug 2018 10:59:17 +0000 (12:59 +0200)]
Fix #68180: iconv_mime_decode can return extra characters in a header

Basically, the algorithm to append a converted string to an existing
`smart_str` works by increasing the `smart_str` buffer, to let `iconv`
convert characters until there is no more space, to set the new length
of the `smart_str` and to repeat until there is no more input.

Formerly, the new length calculation has been wrong, though, since we
would have to take the old `out_len` into account (`buf_growth -
old_out_len - out_len`).  However, since there is no need to take the
old `out_len` into account when increasing the `smart_str` buffer, we
can simplify the fix, avoiding an additional variable.

6 years agoFix #60494: iconv_mime_decode does ignore special characters
Christoph M. Becker [Sat, 25 Aug 2018 13:41:44 +0000 (15:41 +0200)]
Fix #60494: iconv_mime_decode does ignore special characters

We must not ignore erroneous characters in mime headers, but rather let
iconv_mime_decode() fail in this case, issuing the usual notice
regarding illegal characters.

6 years agoFix #63839: iconv_mime_decode_headers function is skipping headers
Christoph M. Becker [Sun, 12 Aug 2018 21:20:41 +0000 (23:20 +0200)]
Fix #63839: iconv_mime_decode_headers function is skipping headers

We have to cater to the possibility that `=?` is not the start of an
encoded-word, but rather a literal `=?`.  If a line break is found
while we're still looking for the charset, we can safely assume that
it's a literal `=?`, and act accordingly.

6 years agoFix #55146: iconv_mime_decode_headers() skips some headers
Christoph M. Becker [Sun, 12 Aug 2018 17:55:09 +0000 (19:55 +0200)]
Fix #55146: iconv_mime_decode_headers() skips some headers

If we're expecting the start of an encoded word (`=?`), but instead of
the question mark get a line break (CR or LF), we must not append it to
the `pretval`.

6 years agomkdist.php: recursively check dll dependencies
Dylan K. Taylor [Tue, 21 Aug 2018 14:23:02 +0000 (15:23 +0100)]
mkdist.php: recursively check dll dependencies

Fix duplication of recursively checked deps

6 years agoSimplify regression test
Christoph M. Becker [Thu, 23 Aug 2018 10:44:06 +0000 (12:44 +0200)]
Simplify regression test

There's no need to actually try to trigger an out-of-memory condition
to proof the leak; instead we can simply rely on the Zend MM to report
the memory leaks in debug mode (at least on Linux).  Therefore we
simplify the regression test, which also makes it run much faster.

6 years agoFix #68825: Exception in DirectoryIterator::getLinkTarget()
Christoph M. Becker [Sun, 19 Aug 2018 12:03:47 +0000 (14:03 +0200)]
Fix #68825: Exception in DirectoryIterator::getLinkTarget()

intern->file_name may not have been properly set when
DirectoryIterator::getLinkTarget() is called, so we make sure it is
before using it.

6 years agoIncrease memory_limit to prevent test failures
Christoph M. Becker [Wed, 22 Aug 2018 12:29:28 +0000 (14:29 +0200)]
Increase memory_limit to prevent test failures