]> granicus.if.org Git - php/log
php
5 years agoMerge branch 'PHP-7.4'
Dmitry Stogov [Mon, 9 Dec 2019 12:58:19 +0000 (15:58 +0300)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Export zend_init_func_run_time_cache()

5 years agoExport zend_init_func_run_time_cache()
Dmitry Stogov [Mon, 9 Dec 2019 12:58:00 +0000 (15:58 +0300)]
Export zend_init_func_run_time_cache()

5 years agoMerge branch 'PHP-7.4'
Dmitry Stogov [Mon, 9 Dec 2019 12:07:39 +0000 (15:07 +0300)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Call zend_unregister_ini_entries() when unload extension loaded through dl() without MSHUTDOWN callback. Extensions with MSHUTDOWN should use UNREGISTER_INI_ENTRIES().

5 years agoCall zend_unregister_ini_entries() when unload extension loaded through dl() without...
Dmitry Stogov [Mon, 9 Dec 2019 12:05:24 +0000 (15:05 +0300)]
Call zend_unregister_ini_entries() when unload extension loaded through dl() without MSHUTDOWN callback.
Extensions with MSHUTDOWN should use UNREGISTER_INI_ENTRIES().

5 years agoMerge branch 'PHP-7.4'
Dmitry Stogov [Mon, 9 Dec 2019 10:50:43 +0000 (13:50 +0300)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fixed bug #78895 (Reflection detects abstract non-static class as abstract static. IS_IMPLICIT_ABSTRACT is not longer used)

5 years agoFixed bug #78895 (Reflection detects abstract non-static class as abstract static...
Dmitry Stogov [Mon, 9 Dec 2019 10:49:12 +0000 (13:49 +0300)]
Fixed bug #78895 (Reflection detects abstract non-static class as abstract static. IS_IMPLICIT_ABSTRACT is not longer used)

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Mon, 9 Dec 2019 09:32:53 +0000 (10:32 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Extend CURLFile to support streams
  Use curl_mime_*() functions if available

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Mon, 9 Dec 2019 09:32:03 +0000 (10:32 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Extend CURLFile to support streams
  Use curl_mime_*() functions if available

5 years agoExtend CURLFile to support streams
Christoph M. Becker [Mon, 29 Apr 2019 08:21:07 +0000 (10:21 +0200)]
Extend CURLFile to support streams

Due to former restrictions of the libcurl API, curl multipart/formdata
file uploads supported only proper files.  However, as of curl 7.56.0
the new `curl_mime_*()` API is available (and already supported by
PHP[1]), which allows us to support arbitrary *seekable* streams, which
is generally desirable, and particularly resolves issues with the
transparent Unicode and long part support on Windows (see bug #77711).

Note that older curl versions are still supported, but CURLFile is
still restricted to proper files in this case.

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

(cherry picked from commit c68dc6b5e37e74d89e0a387079139c054c8faa81)

5 years agoUse curl_mime_*() functions if available
Christoph M. Becker [Mon, 15 Apr 2019 16:24:59 +0000 (18:24 +0200)]
Use curl_mime_*() functions if available

As of curl 7.56.0, `curl_formadd()` is deprecated in favor of
`curl_mime_*()`, so we use the latter if available.

(cherry picked from commit a83b68ba56714bfa06737a61af795460caa4a105)

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Mon, 9 Dec 2019 08:16:48 +0000 (09:16 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fixed bug #78926: Handle class table reallocation on failed link

5 years agoFixed bug #78926: Handle class table reallocation on failed link
Nikita Popov [Mon, 9 Dec 2019 08:15:27 +0000 (09:15 +0100)]
Fixed bug #78926: Handle class table reallocation on failed link

When we change back the bucket key on a class linking failure,
make sure to reload the bucket pointer, as the class table may
have been reallocated in the meantime.

Also remove a bogus bucket key change in anon class registration:
We don't actually rename the class in this case anymore, the RTD
key is already the final name.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Mon, 9 Dec 2019 07:58:37 +0000 (08:58 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix bug #78887: Add upgrading note about get_declared_classes() order

[ci skip]

5 years agoFix bug #78887: Add upgrading note about get_declared_classes() order
Nikita Popov [Mon, 9 Dec 2019 07:58:11 +0000 (08:58 +0100)]
Fix bug #78887: Add upgrading note about get_declared_classes() order

[ci skip]

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Mon, 9 Dec 2019 07:49:42 +0000 (08:49 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Use unmangled named in property type inheritance error

5 years agoUse unmangled named in property type inheritance error
Nikita Popov [Mon, 9 Dec 2019 07:48:33 +0000 (08:48 +0100)]
Use unmangled named in property type inheritance error

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Mon, 9 Dec 2019 07:41:43 +0000 (08:41 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fixed bug #78904: Don't call any magic for uninitialized typed properties

5 years agoFixed bug #78904: Don't call any magic for uninitialized typed properties
Nikita Popov [Mon, 28 Oct 2019 12:34:33 +0000 (13:34 +0100)]
Fixed bug #78904: Don't call any magic for uninitialized typed properties

We already changed the behavior for __set() in f1848a4. However, it
seems that this is also a problem for all the other property magic,
see bug #78904.

This commit makes the behavior of all the property magic consistent:
Magic will not be triggered for uninitialized typed properties, only
explicitly unset() ones. This brings behavior more in line how
non-typed properties behave and avoids WTF.

Closes GH-4974.

5 years agoConvert warnings to ValueError
George Peter Banyard [Sun, 8 Dec 2019 20:03:14 +0000 (21:03 +0100)]
Convert warnings to ValueError

5 years agoRemove dead commented code and dead code in-between KALLE_0 ifdefs.
George Peter Banyard [Sun, 8 Dec 2019 13:32:01 +0000 (14:32 +0100)]
Remove dead commented code and dead code in-between KALLE_0 ifdefs.

Closes GH-4986

5 years agoAdd type error on filename which contain null bytes in bzopen
George Peter Banyard [Sun, 8 Dec 2019 19:19:32 +0000 (20:19 +0100)]
Add type error on filename which contain null bytes in bzopen

5 years agoMerge branch 'PHP-7.4'
Jakub Zelenka [Sun, 8 Dec 2019 17:58:59 +0000 (17:58 +0000)]
Merge branch 'PHP-7.4'

5 years agoFix bug #78916 (php-fpm 7.4.0 don't send mail via mail())
Jakub Zelenka [Sun, 8 Dec 2019 17:57:17 +0000 (17:57 +0000)]
Fix bug #78916 (php-fpm 7.4.0 don't send mail via mail())

5 years agoAdd type error on filename which contain null bytes in bzopen
George Peter Banyard [Sun, 8 Dec 2019 14:06:59 +0000 (15:06 +0100)]
Add type error on filename which contain null bytes in bzopen

5 years agoDrop duplicate definitions of zend_isnan and friends
Christoph M. Becker [Sat, 7 Dec 2019 17:05:44 +0000 (18:05 +0100)]
Drop duplicate definitions of zend_isnan and friends

Following up on commit 1c4ad17[1], we remove these definitions from
zend_config.w32.h, since they would be overridden by those in
zend_portability.h anyway.

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

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Sat, 7 Dec 2019 11:09:16 +0000 (12:09 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #78923: Artifacts when convoluting image with transparency

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Sat, 7 Dec 2019 11:07:51 +0000 (12:07 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #78923: Artifacts when convoluting image with transparency

5 years agoFix #78923: Artifacts when convoluting image with transparency
willson-chen [Sat, 7 Dec 2019 02:56:37 +0000 (10:56 +0800)]
Fix #78923: Artifacts when convoluting image with transparency

We have to properly initialize `pxl` before using it.

Fix ported from <https://github.com/libgd/libgd/pull/559>.

5 years agoFix compiler warning
Christoph M. Becker [Fri, 6 Dec 2019 15:48:18 +0000 (16:48 +0100)]
Fix compiler warning

This cast is already done for all other _aliases, but this one has
apparently been missed so far.

5 years agoFixed operation with result in CPU register
Dmitry Stogov [Fri, 6 Dec 2019 14:16:46 +0000 (17:16 +0300)]
Fixed operation with result in CPU register

5 years agoRemove unused function
Nikita Popov [Fri, 6 Dec 2019 13:18:52 +0000 (14:18 +0100)]
Remove unused function

5 years agoOptimize return type checking
Nikita Popov [Fri, 6 Dec 2019 13:15:58 +0000 (14:15 +0100)]
Optimize return type checking

Split off the fast-path case and avoid redundant checks.

5 years agoUse cheaper code for overflow +/-1
Dmitry Stogov [Fri, 6 Dec 2019 11:04:58 +0000 (14:04 +0300)]
Use cheaper code for overflow +/-1

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Fri, 6 Dec 2019 10:11:12 +0000 (11:11 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix constant evaluation of && and ||

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Fri, 6 Dec 2019 10:10:31 +0000 (11:10 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix constant evaluation of && and ||

5 years agoFix constant evaluation of && and ||
Nikita Popov [Fri, 6 Dec 2019 10:07:57 +0000 (11:07 +0100)]
Fix constant evaluation of && and ||

The "return" in the for loop should have been a break on the switch,
otherwise the result is just ignored... but because it prevents
evaluation of the other operand, it also violates the invariant that
everything has been constant evaluated, resulting in an assertion
failure.

The for loop isn't correct in any case though, because it's not legal
to determine the result based on just the second operand, as the
first one may have a side-effect that cannot be optimized away.

5 years agoTry to restore laravel & symfony community jobs
Nikita Popov [Fri, 6 Dec 2019 06:56:39 +0000 (07:56 +0100)]
Try to restore laravel & symfony community jobs

Patch Doctrine to fix the PDOConnection::query() signature.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Fri, 6 Dec 2019 06:40:01 +0000 (07:40 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix intermittent error in pdo_mysql___construct_options.phpt

5 years agoFix intermittent error in pdo_mysql___construct_options.phpt
Nikita Popov [Fri, 6 Dec 2019 06:38:56 +0000 (07:38 +0100)]
Fix intermittent error in pdo_mysql___construct_options.phpt

For the love of god, don't write tests based on mt_rand!

5 years agoRestore PDOStatement::setFetchMode() signature
Nikita Popov [Fri, 6 Dec 2019 06:18:11 +0000 (07:18 +0100)]
Restore PDOStatement::setFetchMode() signature

I don't think this is worth the BC break, and getting variadic
signature changes compatible across PHP versions is somewhat tricky.

5 years agoRemove CV limitation when determining value from type in SCCP
Nikita Popov [Thu, 5 Dec 2019 14:01:51 +0000 (15:01 +0100)]
Remove CV limitation when determining value from type in SCCP

As far as I can determine, this is no longer a problem: We will
not try to remove the defining instructions (this is only done if
the value is known by SCCP itself) and we also only determine
non-refcounted values in this way, so it is not a problem if the
FREE is omitted.

5 years agoAdd DCE support for ARRAY_KEY_EXISTS
Nikita Popov [Thu, 5 Dec 2019 13:51:36 +0000 (14:51 +0100)]
Add DCE support for ARRAY_KEY_EXISTS

5 years agoMove isinf, isnan, and isfinite to zend_portability.h
George Peter Banyard [Wed, 4 Dec 2019 15:37:42 +0000 (16:37 +0100)]
Move isinf, isnan, and isfinite to zend_portability.h

Closes GH-4966

5 years agoCapitalize first character of error message.
George Peter Banyard [Tue, 19 Nov 2019 21:56:48 +0000 (22:56 +0100)]
Capitalize first character of error message.

5 years agoConvert Errors to ValueErrors
George Peter Banyard [Mon, 18 Nov 2019 22:40:02 +0000 (23:40 +0100)]
Convert Errors to ValueErrors

Closes GH-4930

5 years agoAdd upgrading notes about removed functionality that were deprecated in PHP 7.4
Máté Kocsis [Thu, 5 Dec 2019 12:15:11 +0000 (13:15 +0100)]
Add upgrading notes about removed functionality that were deprecated in PHP 7.4

5 years agoRemove FILTER_SANITIZE_MAGIC_QUOTES filter
Máté Kocsis [Mon, 18 Nov 2019 13:13:12 +0000 (14:13 +0100)]
Remove FILTER_SANITIZE_MAGIC_QUOTES filter

5 years agoRemove magic quotes legacy
Máté Kocsis [Sun, 17 Nov 2019 20:34:52 +0000 (21:34 +0100)]
Remove magic quotes legacy

5 years agoRemove ezmlm_hash() function
Máté Kocsis [Sun, 17 Nov 2019 20:28:17 +0000 (21:28 +0100)]
Remove ezmlm_hash() function

5 years agoRemove money_format() function
Máté Kocsis [Sun, 17 Nov 2019 20:10:37 +0000 (21:10 +0100)]
Remove money_format() function

5 years agoRemove convert_cyr_string() function
Máté Kocsis [Sun, 17 Nov 2019 20:06:08 +0000 (21:06 +0100)]
Remove convert_cyr_string() function

5 years agoRemove hebrevc() function
Máté Kocsis [Sun, 17 Nov 2019 19:56:03 +0000 (20:56 +0100)]
Remove hebrevc() function

5 years agoCapitalize the initial letter of the error message of htmlspecialchars() function
Máté Kocsis [Wed, 20 Nov 2019 01:31:49 +0000 (02:31 +0100)]
Capitalize the initial letter of the error message of htmlspecialchars() function

5 years agoSupport "string or array" in zpp
Nikita Popov [Thu, 5 Dec 2019 09:28:41 +0000 (10:28 +0100)]
Support "string or array" in zpp

This is one of our more common argument unions. Usage is just
prototyped in a few places, certainly not a full conversion.

I'm removing the str_replace.phpt test, because aparently it was
split up into smaller tests at some point, but the original has
not been removed.

Closes GH-4970.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Thu, 5 Dec 2019 10:19:27 +0000 (11:19 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix timeout tests

5 years agoFix timeout tests
Nikita Popov [Thu, 5 Dec 2019 08:13:57 +0000 (09:13 +0100)]
Fix timeout tests

After taking a more detailed look at our commonly failing timeout
tests... turns out that most of them are useless as written and
don't test what they're supposed to.

This PR has a couple of changes:

* Tests for timeout in while/for/foreach should just have the loop
as an infinite loop. Calling into something like busy_wait means
that we just end up always testing whatever busy_wait does.
* Tests for timeouts in calls need to be based on something like
sleep, otherwise we'd have to introduce a loop, and we'd end up
testing timeout of the looping structure instead. Using sleep only
works on Windows, because that's the only system where sleep counts
towards the timeout. As such, many of those tests are now Windows only.
* Removed some tests where I don't see a good way to test what they're
supposed to test. E.g. how can we test a timeout in eval() specifically?

The shutdown function tests are marked as XFAIL, as we are currently
missing a timeout check in call_user_function. I believe that's a
legitimate issue.

Closes GH-4969.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Thu, 5 Dec 2019 07:39:16 +0000 (08:39 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix mysqli ssl tests

5 years agoFix mysqli ssl tests
Nikita Popov [Thu, 5 Dec 2019 07:37:52 +0000 (08:37 +0100)]
Fix mysqli ssl tests

First, make sure the tests are skipped if we connect via unix
socket, as we can't use SSL in that case.

Second, use a cipher that is not blacklisted in current MySQL
versions.

5 years agoPromote warning to exception in file_get_contents() function
Máté Kocsis [Wed, 20 Nov 2019 01:29:18 +0000 (02:29 +0100)]
Promote warning to exception in file_get_contents() function

5 years agoPromote warnings to exceptions in settype() function
Máté Kocsis [Wed, 20 Nov 2019 01:26:39 +0000 (02:26 +0100)]
Promote warnings to exceptions in settype() function

5 years agoPromote warning to exception in log() function
Máté Kocsis [Wed, 20 Nov 2019 01:14:20 +0000 (02:14 +0100)]
Promote warning to exception in log() function

5 years agoUpdate/fix remaining opcache zend_func_info.c signatures
Tyson Andre [Thu, 5 Dec 2019 00:24:34 +0000 (19:24 -0500)]
Update/fix remaining opcache zend_func_info.c signatures

See UPGRADING:

> . The GD extension now uses objects as the underlying data structure for
>   images, rather than resources. These objects are completely opaque, i.e.
>   they don't have any methods.

Remove types which are no longer in Reflection due to throwing instead of
emitting warnings.
Remove entries where reference counts are 0 and types are duplicated.

Closes GH-4967.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Thu, 5 Dec 2019 06:25:26 +0000 (07:25 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix bug #78823: add zlib library to mysqlnd

5 years agoFix bug #78823: add zlib library to mysqlnd
Arjen de Korte [Mon, 25 Nov 2019 22:54:49 +0000 (23:54 +0100)]
Fix bug #78823: add zlib library to mysqlnd

The problem is newer binutils will no longer default to --copy-dt-needed-entries but use --no-copy-dt-needed-entries instead. So all libraries needed *must* be provided.

Workarounds (either one works)
1) Add "-Wl,--copy-dt-needed-entries" to LDFLAGS to bring back the old behavior of the linker
2) Add "-lz" to list of libraries to be added

In "ext/mysqlnd/mysqlnd_protocol_frame_codec.c" when the "zlib.h" header is included should also trigger adding '-lz' to the list of libraries.

5 years agoMerge branch 'reflection-fixes' into HEAD
Tyson Andre [Thu, 5 Dec 2019 00:12:28 +0000 (19:12 -0500)]
Merge branch 'reflection-fixes' into HEAD

5 years agoRemove opcache signatures duplicating reflection
Tyson Andre [Wed, 4 Dec 2019 14:50:24 +0000 (09:50 -0500)]
Remove opcache signatures duplicating reflection

None of these are refcounted.

5 years agoMake more opcache signatures consistent with reflection
Tyson Andre [Wed, 4 Dec 2019 14:40:42 +0000 (09:40 -0500)]
Make more opcache signatures consistent with reflection

5 years agoRemove obsolete configure checks for isinf, isnan, and isfinite
George Peter Banyard [Wed, 4 Dec 2019 14:17:57 +0000 (15:17 +0100)]
Remove obsolete configure checks for isinf, isnan, and isfinite

5 years agoRemove configure checks for asinh, acosh, atanh, log1p, hypot
George Peter Banyard [Wed, 4 Dec 2019 13:57:11 +0000 (14:57 +0100)]
Remove configure checks for asinh, acosh, atanh, log1p, hypot

5 years agoRemove now obsolete configure checks for INFINITY and NAN.
George Peter Banyard [Wed, 4 Dec 2019 12:39:52 +0000 (13:39 +0100)]
Remove now obsolete configure checks for INFINITY and NAN.

5 years agoRemove custom implementation for inifinity and NAN as we can now rely on C99
George Peter Banyard [Wed, 4 Dec 2019 12:13:06 +0000 (13:13 +0100)]
Remove custom implementation for inifinity and NAN as we can now rely on C99

Those ZEND_* constant variant are now identical to their C counterpart, we may considering removing them in the future.

5 years agoRemove unnecessary C99 checks for maths functions
George Peter Banyard [Wed, 20 Nov 2019 01:22:38 +0000 (02:22 +0100)]
Remove unnecessary C99 checks for maths functions

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 4 Dec 2019 10:21:34 +0000 (11:21 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix AST printing of nullable builtin types

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Wed, 4 Dec 2019 10:21:28 +0000 (11:21 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix AST printing of nullable builtin types

5 years agoFix AST printing of nullable builtin types
Nikita Popov [Wed, 4 Dec 2019 10:20:52 +0000 (11:20 +0100)]
Fix AST printing of nullable builtin types

Fixes oss-fuzz #19109.

5 years agoFix incorrect assertion in property type variance check
Nikita Popov [Wed, 4 Dec 2019 10:07:22 +0000 (11:07 +0100)]
Fix incorrect assertion in property type variance check

Only one of the status has to be UNRESOLVED, the other could also
be SUCCESS.

Fixes oss-fuzz #19108 and oss-fuzz #19111.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 4 Dec 2019 08:53:08 +0000 (09:53 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Preload: Better reason message for internal parents on windows

5 years agoPreload: Better reason message for internal parents on windows
Nikita Popov [Wed, 4 Dec 2019 08:52:40 +0000 (09:52 +0100)]
Preload: Better reason message for internal parents on windows

Related to bug #78881.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 4 Dec 2019 08:41:51 +0000 (09:41 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fixed bug #78898

5 years agoFixed bug #78898
Nikita Popov [Wed, 4 Dec 2019 08:40:48 +0000 (09:40 +0100)]
Fixed bug #78898

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 4 Dec 2019 07:08:40 +0000 (08:08 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Add ReflectionMethod::getClosure() change to UPGRADING

[ci skip]

5 years agoAdd ReflectionMethod::getClosure() change to UPGRADING
Nikita Popov [Wed, 4 Dec 2019 07:07:59 +0000 (08:07 +0100)]
Add ReflectionMethod::getClosure() change to UPGRADING

Fixes bug #78897.

[ci skip]

5 years agoFix other incorrect opcache types
Tyson Andre [Sun, 1 Dec 2019 15:51:57 +0000 (10:51 -0500)]
Fix other incorrect opcache types

Closes GH-4959.

5 years agoMake some opcache types consistent with reflection information
Tyson Andre [Sun, 1 Dec 2019 15:37:39 +0000 (10:37 -0500)]
Make some opcache types consistent with reflection information

Remove functions such as filter_id() where reference counts and types are
identical to what's in opcache.

Remove null types from zend_func_info.c that aren't in Reflection
(php would throw now)

Fix the Reflection type information for assert_options()

    php > assert_options(ASSERT_CALLBACK, static function() {});
    php > var_export(assert_options(ASSERT_CALLBACK));
    Closure::__set_state(array(
    ))

Closes GH-4958.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 4 Dec 2019 06:17:18 +0000 (07:17 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix print_r return types in opcache

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Wed, 4 Dec 2019 06:16:56 +0000 (07:16 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix print_r return types in opcache

5 years agoFix print_r return types in opcache
Tyson Andre [Sat, 30 Nov 2019 19:14:06 +0000 (14:14 -0500)]
Fix print_r return types in opcache

https://www.php.net/print_r

> When the return parameter is TRUE, this function will return a string.
> Otherwise, the return value is TRUE.

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Tue, 3 Dec 2019 11:09:47 +0000 (12:09 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Next is 7.3.14

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Tue, 3 Dec 2019 11:07:57 +0000 (12:07 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Next is 7.3.14

5 years agoNext is 7.3.14
Christoph M. Becker [Tue, 3 Dec 2019 11:04:17 +0000 (12:04 +0100)]
Next is 7.3.14

5 years agoMerge branch 'PHP-7.4'
Remi Collet [Tue, 3 Dec 2019 10:26:36 +0000 (11:26 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  next is 7.2.27

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Remi Collet [Tue, 3 Dec 2019 10:26:20 +0000 (11:26 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  next is 7.2.27

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Remi Collet [Tue, 3 Dec 2019 10:26:05 +0000 (11:26 +0100)]
Merge branch 'PHP-7.2' into PHP-7.3

* PHP-7.2:
  next is 7.2.27

5 years agonext is 7.2.27
Remi Collet [Tue, 3 Dec 2019 10:25:37 +0000 (11:25 +0100)]
next is 7.2.27

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Mon, 2 Dec 2019 15:53:35 +0000 (16:53 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #78883: fgets(STDIN) fails on Windows

5 years agoFix #78883: fgets(STDIN) fails on Windows
Christoph M. Becker [Mon, 2 Dec 2019 14:14:57 +0000 (15:14 +0100)]
Fix #78883: fgets(STDIN) fails on Windows

We add the `is_seekable` member to `php_stdio_stream_data`, and prefer
that over `is_pipe`, since the latter is simply a misnomer.  We keep
`is_pipe` for now for Windows only, though, because we need special
support for pipes there.  We also fix the misaligned bitfield which
formerly took 33 bit.

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Mon, 2 Dec 2019 10:39:58 +0000 (11:39 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #78814: strip_tags allows / in tag name => whitelist bypass

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Mon, 2 Dec 2019 10:39:10 +0000 (11:39 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #78814: strip_tags allows / in tag name => whitelist bypass

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Christoph M. Becker [Mon, 2 Dec 2019 10:38:11 +0000 (11:38 +0100)]
Merge branch 'PHP-7.2' into PHP-7.3

* PHP-7.2:
  Fix #78814: strip_tags allows / in tag name => whitelist bypass

5 years agoFix #78814: strip_tags allows / in tag name => whitelist bypass
Christoph M. Becker [Sun, 17 Nov 2019 13:14:59 +0000 (14:14 +0100)]
Fix #78814: strip_tags allows / in tag name => whitelist bypass

When normalizing tags to check whether they are contained in the set
of allowable tags, we must not strip slashes, unless they come
immediately after the opening `<`, or immediately before the closing
`>`.