Compare commits

...
959 Commits
Author SHA1 Message Date
Alexander Kurilo 1549c6d26e Regenerate certificates for openssl tests 2018-12-04 12:43:47 -05:00
Stanislav Malyshev 09cb571473 Fix null pointer deref in qprint-encode filter (bug #77231) 2018-12-04 10:43:38 -05:00
Stanislav Malyshev 8852e24a98 Fix bug #77022 - use file mode or umask for new files 2018-12-04 10:43:38 -05:00
Stanislav Malyshev e7c8e6cde0 Fix bug #77143 - add more checks to buffer reads 2018-12-04 10:43:37 -05:00
Stanislav Malyshev 752f0e6e2b Disable rsh/ssh functionality in imap by default (bug #77153) 2018-11-24 13:27:28 -05:00
Sara Golemon 1d86b84d6b Prep for 7.2.13 final 2018-11-20 14:43:33 -05:00
Sara Golemon 90da8bf04c Update CREDITS for PHP 7.2.13RC1 2018-11-20 19:01:28 +00:00
Sara Golemon 386a7e5034 Update NEWS for PHP 7.2.13RC1 2018-11-20 19:01:28 +00:00
Remi Collet e7acb29eb0 NEWS 2018-11-20 11:20:05 +01:00
Remi Collet 6ce4be1762 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  NEWS
  Fix #77151 ftp_close(): SSL_read on shutdown
2018-11-20 11:19:52 +01:00
Remi Collet 1adbf70e26 NEWS 2018-11-20 11:19:29 +01:00
Remi Collet d9afc2f662 Fix #77151 ftp_close(): SSL_read on shutdown
Regression introduced in fix for #76972

only display the error message when sslerror
or if errno is set (for SSL_ERROR_SYSCALL case)
2018-11-20 11:18:34 +01:00
Anatol Belski 6742b4b7cc [ci skip] Update NEWS 2018-11-18 14:38:35 +01:00
Anatol Belski 6e32f59525 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-11-18 14:37:56 +01:00
Anatol Belski 3e78380d02 [ci skip] Update NEWS 2018-11-18 14:37:04 +01:00
Anatol Belski fb06cca6cb Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #77047 pg_convert has a broken regex for the 'TIME WITHOUT TIMEZONE' data type
2018-11-18 12:32:47 +01:00
Anatol Belski 0434141ce9 Fixed bug #77047 pg_convert has a broken regex for the 'TIME WITHOUT TIMEZONE' data type
Backport 369c991d and 282a63da to 7.1, closes #3634
2018-11-18 12:29:34 +01:00
Anatol Belski b4776cda2e [ci skip] Update NEWS 2018-11-17 23:00:12 +01:00
Anatol Belski a7e9790969 Fixed bug #77111 php-win.exe corrupts unicode symbols from cli parameters
The binary can be of course used on console, for whatever reasons, so
UNICODE API should be used in that case. That might however not work as
expected, if the binary is used for a service.
2018-11-16 23:19:33 +01:00
Christoph M. Becker 211c6189f6 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #77147: Fix for 60494 ignores ICONV_MIME_DECODE_CONTINUE_ON_ERROR
2018-11-14 14:57:40 +01:00
Christoph M. Becker a56cdd0a82 Fix #77147: Fix for 60494 ignores ICONV_MIME_DECODE_CONTINUE_ON_ERROR
If the `ICONV_MIME_DECODE_CONTINUE_ON_ERROR` flag is set, parsing
should not fail, if there are illegal characters in the headers;
instead we silently ignore these like before.
2018-11-14 14:55:38 +01:00
Joe Watkins ce4eb89976 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Validate length on socket_write
2018-11-13 12:58:23 +01:00
Thiago Carvalho ec2e7a2d48 Validate length on socket_write 2018-11-13 12:56:37 +01:00
Christoph M. Becker 77646d2fd9 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #77141: Signedness issue in SOAP when precision=-1
2018-11-12 23:22:16 +01:00
Christoph M. Becker f6079e3c56 Fix #77141: Signedness issue in SOAP when precision=-1
According to php_gcvt(), we assume at most 17 fractional digits for
negative precision.
2018-11-12 23:19:30 +01:00
Anatol Belski 1550451020 Update libmagic.patch [ci skip] 2018-11-10 22:01:49 +01:00
Anatol Belski 3fd46e19ac Fork test with pcre.jit=0 2018-11-10 20:06:47 +01:00
Anatol Belski 9d77bf0978 Fix regex 2018-11-10 12:11:02 +01:00
Anatol Belski 60adea5496 Rework magic data
Avoid patching where vanilla data suffices. More precisely, avoid data
using [:space:] posix class in regex, as it is likely to cause performance
regressions.
2018-11-10 01:28:23 +01:00
Anatol Belski 22f71a66ec Sync one more upstream libmagic piece 2018-11-10 00:19:42 +01:00
Anatol Belski fab72d7571 Update NEWS [ci skip] 2018-11-05 22:53:01 +01:00
Anatol Belski dbb2cce968 Update libmagic.patch [ci skip] 2018-11-05 22:24:27 +01:00
Anatol Belski 0e33c2822c Declare function proto in header 2018-11-05 21:28:04 +01:00
Anatol Belski c621182c42 Backport 7f5f4601 for 7.2 2018-11-04 16:57:55 +01:00
Christoph M. Becker 0afc818976 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #76348: WSDL_CACHE_MEMORY causes Segmentation fault
2018-11-04 16:44:45 +01:00
Christoph M. Becker 625f614cb1 Fix #76348: WSDL_CACHE_MEMORY causes Segmentation fault
“Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end.”
2018-11-04 16:40:27 +01:00
Nikita Popov 4daa413898 Fixed bug #77092
Weird that this worked for so long, probably because nearly all
ext/standard functions use fast ZPP rather than ordinary ZPP.
2018-11-02 14:29:03 +01:00
Derick Rethans 10255a0cd9 Updated to version 2018.7 (2018g) 2018-10-30 11:25:48 +00:00
Derick Rethans fcefc28ce1 Empty merge 2018-10-30 11:25:47 +00:00
Derick Rethans e58388ea6d Updated to version 2018.7 (2018g) 2018-10-30 11:25:45 +00:00
Peter Kokot 69496a04ff [ci skip] Update NEWS 2018-10-30 00:23:20 +01:00
Peter Kokot b1de24e68c Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
  fix bug #77079
2018-10-30 00:22:26 +01:00
Peter Kokot 91a1111160 [ci skip] Update NEWS 2018-10-30 00:22:03 +01:00
Jon Allen 8775bead3a fix bug #77079 2018-10-30 00:19:07 +01:00
Nikita Popov 902ec36710 Merge branch 'PHP-7.1' into PHP-7.2 2018-10-25 16:43:36 +02:00
Nikita Popov f1ceec5533 Fixed bug #77058
Account for the fact that undef must be interpreted as null for
the purposes of INC/DEC inference.
2018-10-25 16:37:41 +02:00
Nikita Popov e7153e8a2f Improve "narrowing" error message
By including the opcode name.
2018-10-25 16:36:23 +02:00
Joe Watkins 33fa02ea38 bump versions 2018-10-24 08:43:27 +02:00
Cameron Porter db47e35373 Fixed bug #50675
SOAP: Stop overwriting the node name when creating an XML node
for an object reference.
2018-10-23 14:20:19 +02:00
Remi Collet 1d5baf167a bump to 7.2.13-dev 2018-10-23 12:15:30 +02:00
Derick Rethans c3a8313136 Updated to version 2018.6 (2018f) 2018-10-22 12:05:40 +01:00
Derick Rethans c22b9e0115 Empty merge 2018-10-22 12:05:40 +01:00
Derick Rethans 41241d109a Updated to version 2018.6 (2018f) 2018-10-22 12:05:39 +01:00
Christoph M. Becker 502b187ae8 Fix #75282: xmlrpc_encode_request() crashes
Since we allow ext/xmlrpc to be built against a system libxmlrpc(-epi),
we must not `efree` memory which has been allocated via `malloc`.  To
distinguish bundled and system libxmlrpc(-epi) we introduce the macro
`HAVE_XMLRPC_BUNDLED` (analogous to how it is done by ext/gd).  We
deliberately keep the ugly `#ifdef`s, instead of tucking them away in
an `XMLRPC_FREE()` macro, to not forget that it is a bad idea to fork
and bundle a library, but to also allow building against an unpatched
system lib.
2018-10-21 12:06:55 +02:00
Anatol Belski ba43d5acef Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix tests for ICU 63.1
2018-10-20 23:04:15 +02:00
Anatol Belski 4461fb9c26 Fix tests for ICU 63.1
The most of change is U+00A0 vs. new U+202F used in some outputs.
2018-10-20 23:02:06 +02:00
Peter Kokot 3b8be227bd [ci skip] Update NEWS 2018-10-20 09:52:46 +02:00
Peter Kokot 0dc15e1885 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
  Fix #77041: buildconf should output error messages to stderr
2018-10-20 09:51:22 +02:00
Peter Kokot 1b936033b0 [ci skip] Update NEWS 2018-10-20 09:48:50 +02:00
Mizunashi Mana 9f5cb626ed Fix #77041: buildconf should output error messages to stderr 2018-10-20 09:42:56 +02:00
Peter Kokot b9d8e5d706 [ci skip] Update NEWS 2018-10-19 00:08:57 +02:00
Peter Kokot 5531dde5e9 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
  Fix #77035: The phpize and ./configure create redundant .deps file
2018-10-19 00:07:42 +02:00
Peter Kokot 4be0528476 [ci skip] Update NEWS 2018-10-19 00:06:11 +02:00
Peter Kokot 447b41f6bb 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
779c11af21.

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.
2018-10-19 00:02:09 +02:00
Peter Kokot de9f325c12 Fix tests/output/bug74815.phpt generating errors.log
Test tests/output/bug74815.phpt was creating an errors.log file
in project root directory and didn't removed it after the test.
2018-10-18 23:39:00 +02:00
Anatol Belski 6a5254bc96 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix test when it's run on another drive
2018-10-18 00:44:43 +02:00
Anatol Belski fda06127fa Fix test when it's run on another drive 2018-10-18 00:43:24 +02:00
Christoph M. Becker 20695fb895 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #77027: tidy::getOptDoc() not available on Windows
2018-10-17 16:30:46 +02:00
Christoph M. Becker 8a9e0312ce 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.
2018-10-17 16:27:07 +02:00
Christoph M. Becker 310b95d7eb Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Add support for getting SKIP_TAGSTART and SKIP_WHITE options
2018-10-16 18:49:17 +02:00
Christoph M. Becker b33124239a 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>
2018-10-16 18:47:31 +02:00
Peter Kokot f1d7e3ca0b 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
2018-10-15 04:31:31 +02:00
Peter Kokot f98c916845 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Sync leading and final newlines in *.phpt sections
2018-10-15 04:30:40 +02:00
Peter Kokot 113213f027 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
2018-10-15 04:29:24 +02:00
Peter Kokot 17ccbeec32 Trim trailing whitespace in *.phpt 2018-10-14 19:44:14 +02:00
Peter Kokot cc7215f48f Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Trim trailing whitespace in *.phpt
2018-10-14 19:43:39 +02:00
Peter Kokot 7af945e271 Trim trailing whitespace in *.phpt 2018-10-14 19:43:12 +02:00
Peter Kokot 2707932241 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix failing ext/session/tests due to final newlines
2018-10-14 13:41:09 +02:00
Peter Kokot afd534f163 Fix failing ext/session/tests due to final newlines 2018-10-14 13:38:28 +02:00
Peter Kokot 60a69daec6 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
2018-10-14 12:54:08 +02:00
Peter Kokot 6f343d29a5 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Sync leading and final newlines in source code files
2018-10-14 12:52:38 +02:00
Peter Kokot 03f3b8479b 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
2018-10-14 12:51:01 +02:00
Frank Denis 5d70165f63 [ci skip] Update NEWS 2018-10-14 10:58:02 +02:00
Frank Denis 82a93c1794 ext/sodium: sodium_pad(): do not copy any bytes if the string is empty
Spotted by San Zhang, thanks!

Backport from PECL libsodium-php 2.0.13
2018-10-14 10:43:21 +02:00
Frank Denis bf48d0c475 ext/sodium: Fix sodium_pad() with blocksize >= 256
Backport from PECL libsodium-php 2.0.12
2018-10-14 10:37:37 +02:00
Frank Denis 15ba7df224 ext/sodium: Use a correct max output size for base64 decoding
Also handle the case where the function is not available in test.

Backport from PECL libsodium-php 2.0.12
2018-10-14 10:37:18 +02:00
Frank Denis d057458166 ext/sodium: Avoid shifts wider than 32 bits on size_t values
Backport from PECL libsodium-php 2.0.10
2018-10-14 10:21:29 +02:00
Peter Kokot c25b1a7e8c Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix failing tests/lang due to whitespace
2018-10-13 15:23:35 +02:00
Peter Kokot ed64e1d59a Fix failing tests/lang due to whitespace 2018-10-13 15:22:49 +02:00
Peter Kokot 102cf75eeb Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix failing ext/zlib/tests due to whitespace
2018-10-13 15:15:39 +02:00
Peter Kokot 9120e79e9f Fix failing ext/zlib/tests due to whitespace 2018-10-13 15:15:26 +02:00
Peter Kokot 902d39a3a7 Trim trailing whitespace in source code files 2018-10-13 14:14:50 +02:00
Peter Kokot 581f0141b6 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Trim trailing whitespace in source code files
2018-10-13 14:13:37 +02:00
Peter Kokot 7f6387b59a Trim trailing whitespace in source code files 2018-10-13 14:12:55 +02:00
Peter Kokot 2aa897476f 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.
2018-10-13 11:22:30 +02:00
Peter Kokot 5a0610d8cc Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Convert CRLF line endings to LF
2018-10-13 11:22:02 +02:00
Peter Kokot 3f72c77ce4 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.
2018-10-13 11:21:27 +02:00
Derick Rethans 94a98f2c63 Upgrade timelib to 2017.08, to fix bug #77007 2018-10-12 11:41:05 +01:00
Christoph M. Becker ebecf569f9 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #30875: xml_parse_into_struct() does not resolve entities
2018-10-09 16:06:56 +02:00
Christoph M. Becker 2845f859c1 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>
2018-10-09 16:04:43 +02:00
Pierrick Charron efa5674a9b Merge branch 'PHP-7.1' into PHP-7.2 2018-10-09 01:20:01 -04:00
Pierrick Charron f42d7bddc0 Fixed bug #76965 INI_SCANNER_RAW doesn't strip trailing whitespace 2018-10-09 00:00:21 -04:00
Christoph M. Becker 879c937a27 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #76954: apache_response_headers removes last character from header name
2018-10-08 12:30:45 +02:00
stodorovic 47b89bc531 Fix #76954: apache_response_headers removes last character from header name 2018-10-08 12:29:31 +02:00
Christoph M. Becker 1b97f291a7 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #75851: Year component overflow with date formats "c", "o", "r" and "y"
2018-10-08 11:50:37 +02:00
Adam Saponara c097acd52e Fix #75851: Year component overflow with date formats "c", "o", "r" and "y" 2018-10-08 11:48:58 +02:00
Pedro Magalhães 608b48e5f4 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Remove unstable dns tests
2018-10-06 15:58:32 +01:00
Pedro Magalhães 49835e1436 Remove unstable dns tests 2018-10-06 15:58:01 +01:00
Pedro Magalhães 82e10f3974 Fix #76888 - Remove unstable test 2018-10-06 15:45:07 +01:00
Anatol Belski fec5786f87 [ci skip] Update NEWS 2018-10-05 22:59:55 +02:00
Anatol Belski 833a1daee2 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
  Add test for bug #76942
2018-10-05 22:57:45 +02:00
Anatol Belski aaf4cc05eb [ci skip] Update NEWS 2018-10-05 22:57:27 +02:00
Anatol Belski 72df422d69 Add test for bug #76942 2018-10-05 22:54:50 +02:00
Anatol Belski a7754286d2 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Add test for bug #76942
  Fixed Bug #76942 U_ARGUMENT_TYPE_MISMATCH
2018-10-05 22:52:53 +02:00
Anatol Belski c2a956de6f Add test for bug #76942 2018-10-05 22:51:58 +02:00
Anatol Belski 534684d104 Fixed Bug #76942 U_ARGUMENT_TYPE_MISMATCH
ref bug #74484
2018-10-05 22:50:34 +02:00
Nikita Popov fde2ae3721 Merge branch 'PHP-7.1' into PHP-7.2 2018-10-05 18:41:28 +02:00
Manuel Mausz bb4a2e8bb7 Fix #76972: FTP data truncation due to forceful ssl socket shutdown
Do a correct bidirectional shutdown instead
2018-10-05 18:40:50 +02:00
Anatol Belski 42b769b9e2 Update NEWS [ci skip] 2018-10-03 18:49:52 +02:00
Anatol Belski 31a293f885 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Update NEWS [ci skip]
2018-10-03 18:49:13 +02:00
Anatol Belski abfda3de99 Update NEWS [ci skip] 2018-10-03 18:48:40 +02:00
Anatol Belski b8cfa09657 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Avoid code duplication and don't miss env restore
2018-10-03 14:34:08 +02:00
Anatol Belski 044eb39e63 Avoid code duplication and don't miss env restore 2018-10-03 14:32:52 +02:00
Remi Collet da05b7e81e bump zip extension version 2018-10-03 12:59:01 +02:00
Anatol Belski dc48e01a19 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76948 Failed shutdown/reboot or end session in Windows
2018-10-03 12:13:22 +02:00
Anatol Belski b0547a3dfb Fixed bug #76948 Failed shutdown/reboot or end session in Windows 2018-10-03 12:11:43 +02:00
Nikita Popov 54aa76167b Merge branch 'PHP-7.1' into PHP-7.2 2018-10-03 10:50:16 +02:00
Nikita Popov 945f315506 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.
2018-10-03 10:48:42 +02:00
Nikita Popov f0647edd88 Fixed bug #66430 2018-10-02 18:19:53 +02:00
Nikita Popov d2477b284b Fixed bug #76936 2018-10-02 17:47:07 +02:00
Nikita Popov 56d1578515 Merge branch 'PHP-7.1' into PHP-7.2 2018-09-30 20:07:44 +02:00
Nikita Popov db80e0e2ad Fixed bug #75479
Wrap the zend_signal_init() call, so the hook arguments line up.
2018-09-30 20:07:15 +02:00
James Titcumb 950c338f80 Fix reflection arguments for sodium_memzero function 2018-09-29 21:19:42 +02:00
Nikita Popov 8e7dfc6ddf Merge branch 'PHP-7.1' into PHP-7.2 2018-09-28 19:17:29 +02:00
Nikita Popov 83e2b9e220 Fixed bug #76946 2018-09-28 19:15:19 +02:00
Sara Golemon fed09a23b7 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Bump versions for 7.1.24-dev
2018-09-28 11:32:41 -04:00
Sara Golemon 69c1b619c9 Bump versions for 7.1.24-dev 2018-09-28 11:31:22 -04:00
Nikita Popov 99eb4b2ea4 Merge branch 'PHP-7.1' into PHP-7.2 2018-09-28 13:41:06 +02:00
Nikita Popov fa84b8ebb4 Fix test for release builds 2018-09-28 13:40:58 +02:00
Nikita Popov 1c35357b31 Merge branch 'PHP-7.1' into PHP-7.2 2018-09-28 12:57:55 +02:00
Nikita Popov 45cdcb2d0b Fixed bug #76846 2018-09-28 12:56:47 +02:00
Sara Golemon 5f29e3fb6e Bump version 2018-09-25 16:39:25 -04:00
Sara Golemon 4baf4964ad Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76918 Repeated parameter name in arg info
2018-09-25 12:09:38 -04:00
Sara Golemon b5d0eb44c0 Fixed bug #76918 Repeated parameter name in arg info 2018-09-25 11:18:24 -04:00
Christopher Jones 682d0f8325 Merge branch 'PHP-7.1' into PHP-7.2 2018-09-24 20:53:11 +10:00
Christopher Jones 9e56a3373e 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.
2018-09-24 20:52:58 +10:00
Christopher Jones 4ba1fc0a11 Merge branch 'PHP-7.1' into PHP-7.2 2018-09-24 20:06:05 +10:00
Christopher Jones 91954c24da Make usable for PECL OCI8 release for PHP 7.x 2018-09-24 20:05:54 +10:00
Christopher Jones 28b89afca1 Merge branch 'PHP-7.1' into PHP-7.2 2018-09-24 17:06:59 +10:00
Christopher Jones 57eb25b393 Backport master branch comment typo fix 2018-09-24 17:06:29 +10:00
Christopher Jones d7b060e995 Merge branch 'PHP-7.1' into PHP-7.2 2018-09-24 17:01:20 +10:00
Christopher Jones 3d497f884f Make tests portable across PHP 7.x versions 2018-09-24 17:01:13 +10:00
Christopher Jones a370e7d0ad Merge branch 'PHP-7.1' into PHP-7.2 2018-09-24 16:52:26 +10:00
Christopher Jones 338802b543 Remove $id from phpinfo as already done in PHP-7.3 2018-09-24 16:52:17 +10:00
Christopher Jones fc296a27db Merge branch 'PHP-7.1' into PHP-7.2 2018-09-24 16:38:47 +10:00
Christopher Jones 37652336c7 And strip trailing tabs too... 2018-09-24 16:38:39 +10:00
Christopher Jones d2b04c1749 Merge branch 'PHP-7.1' into PHP-7.2 2018-09-24 16:00:04 +10:00
Christopher Jones bdd67d8175 Sync EXPECT usage with PHP-7.3 2018-09-24 15:59:52 +10:00
Christopher Jones f396d297aa Merge branch 'PHP-7.1' into PHP-7.2 2018-09-24 13:27:35 +10:00
Christopher Jones a2c0f8722b Remove trailing whitespace to help keep branches in sync 2018-09-24 13:27:27 +10:00
Christopher Jones f68662f63f Merge branch 'PHP-7.1' into PHP-7.2 2018-09-24 09:56:53 +10:00
Christopher Jones eceb34073b Remove trailing whitespace to help keep branches in sycn 2018-09-24 09:37:46 +10:00
Christoph M. Becker 7c2cc9aa56 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #66828: iconv_mime_encode Q-encoding longer than it should be
2018-09-22 15:31:02 +02:00
Christoph M. Becker 9cbe1283f7 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>
2018-09-22 15:20:20 +02:00
Nikita Popov c26902911f Merge branch 'PHP-7.1' into PHP-7.2 2018-09-19 12:31:46 +02:00
Nikita Popov 842bec5b3c 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 d2dc0a3291 from master.
2018-09-19 12:29:38 +02:00
Nikita Popov c614dd677c 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...
2018-09-19 12:27:31 +02:00
Nikita Popov cc1fb02760 Merge branch 'PHP-7.1' into PHP-7.2 2018-09-19 09:39:13 +02:00
Nikita Popov 294fb83ee8 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.
2018-09-19 09:37:04 +02:00
Nikita Popov 6bf681249f Merge branch 'PHP-7.1' into PHP-7.2 2018-09-18 20:50:37 +02:00
Manabu Matsui ab6c45f524 Fix bug #75533: array_reduce is slow when $carry is large array 2018-09-18 20:49:59 +02:00
Anatol Belski a747db872f Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Add spectre switch for suitable vc14 versions
2018-09-18 10:45:18 +02:00
Anatol Belski be02b2e8fd Add spectre switch for suitable vc14 versions 2018-09-18 10:43:52 +02:00
Pierrick Charron bc1ecd5d7f Merge branch 'PHP-7.1' into PHP-7.2 2018-09-17 20:30:18 -04:00
Pierrick Charron 3bb218a0a7 Fix 76480: Use curl_multi_wait() so that timeouts are respected 2018-09-17 20:28:44 -04:00
Thomas Petazzoni 3691b6d245 Fix #76886: Can't build xmlrpc with expat
We fix it by including "php.h" in the HAVE_LIBEXPAT case.
2018-09-15 13:21:53 +02:00
Dmitry Stogov 3bc4a63fc2 Fixed bug #76800 (foreach inconsistent if array modified during loop) 2018-09-14 10:28:31 +03:00
Anatol Belski 83685b5258 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Sync version for vc++ 15.9
2018-09-13 19:26:49 +02:00
Anatol Belski d77ac7b3dc Sync version for vc++ 15.9 2018-09-13 19:25:23 +02:00
Anatol Belski 922f1a0dcf Backport changes for OpenSSL 1.1.1 CI integration
Add debug message for failing test parts

(cherry picked from commit a45169a6ba)

Show all unmatched errors when test failed

(cherry picked from commit 7015965254)

More possibly colliding libs to remove from the test image

(cherry picked from commit 3008ad1a49)

Remove colliding file from CI image

(cherry picked from commit 6220d21c34)

Fix typo

(cherry picked from commit 24517d82cf)
2018-09-13 11:03:42 +02:00
Anatol Belski 05a4fec761 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Improve error code matching
2018-09-12 16:24:38 +02:00
Anatol Belski 19ab91781e Improve error code matching 2018-09-12 16:22:22 +02:00
Anatol Belski aed32f2a03 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Update binary SDK version for AppVeyor
2018-09-12 12:11:07 +02:00
Anatol Belski 49511a5132 Update binary SDK version for AppVeyor 2018-09-12 12:09:32 +02:00
Ferenc Kovacs f56eeb1779 Merge branch 'PHP-7.1' into PHP-7.2 2018-09-12 00:04:40 +02:00
Ferenc Kovacs 68a77fe3d8 Merge branch 'PHP-7.0' into PHP-7.1 2018-09-12 00:02:18 +02:00
Ferenc Kovacs cba6055cac Merge branch 'PHP-5.6' into PHP-7.0 2018-09-12 00:00:46 +02:00
Ferenc Kovacs 81f23057dc 5.6.39 will be the next 2018-09-11 23:58:17 +02:00
Anatol Belski 9fe7250e5c Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  7.0.33 next
2018-09-11 07:01:18 +02:00
Anatol Belski af80ff25f6 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  7.0.33 next
2018-09-11 07:00:48 +02:00
Anatol Belski 1b89522974 7.0.33 next 2018-09-11 07:00:15 +02:00
Anatol Belski e28516bb91 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Sync NEWS [ci skip]
2018-09-10 16:58:02 +02:00
Anatol Belski df45faf446 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Sync NEWS [ci skip]
2018-09-10 16:57:24 +02:00
Anatol Belski 4415dab25e Sync NEWS [ci skip] 2018-09-10 16:56:37 +02:00
Remi Collet 609afc2992 add NEWS for 76582 2018-09-10 15:30:51 +02:00
Stanislav Malyshev 788717d56d Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Update NEWS
  Fix for bug #76582
2018-09-09 12:29:29 -07:00
Stanislav Malyshev 6623f3caca Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Update NEWS
  Fix for bug #76582
2018-09-09 12:29:23 -07:00
Stanislav Malyshev 024f3ac160 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Update NEWS
  Fix for bug #76582
2018-09-09 12:27:44 -07:00
Stanislav Malyshev c1de84014d Update NEWS 2018-09-09 12:19:38 -07:00
Stanislav Malyshev 23b057742e 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.
2018-09-09 11:45:14 -07:00
Jakub Zelenka 87a9536bda Merge branch 'PHP-7.1' into PHP-7.2 2018-09-09 18:58:23 +01:00
Jakub Zelenka be50a72715 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.
2018-09-09 18:53:55 +01:00
Christoph M. Becker fa70b91a4f Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #75273: php_zlib_inflate_filter() may not update bytes_consumed
2018-09-08 19:09:56 +02:00
Christoph M. Becker 90d863898c 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.
2018-09-08 19:01:36 +02:00
Nikita Popov cfdd828163 Fixed bug #76796 2018-09-07 14:02:03 +02:00
Anatol Belski b323e1e8d0 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Sync with recent changes to default libcurl build
2018-09-05 21:29:53 +02:00
Anatol Belski 28c6125053 Sync with recent changes to default libcurl build
(cherry picked from commit a1ba3007a4)
2018-09-05 21:28:59 +02:00
Christoph M. Becker 7a2c9585c4 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #74454: Wrong exception being thrown when using ReflectionMethod
2018-09-05 15:07:59 +02:00
Christoph M. Becker c0a389a927 Fix #74454: Wrong exception being thrown when using ReflectionMethod
If zend_throw_exception_ex() already threw an exception, we should not
throw again.
2018-09-05 15:05:19 +02:00
Joe Watkins 21f8cd2a92 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix bug #74764 and add a test case
2018-09-04 11:12:39 +02:00
Ville Hukkamaki 0f724453c0 Fix bug #74764 and add a test case 2018-09-04 11:12:04 +02:00
Anatol Belski 64d2978546 [ci skip] Update NEWS 2018-09-04 11:02:26 +02:00
Anatol Belski 9459b45e2b Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-09-04 11:01:57 +02:00
Anatol Belski e58690a26d [ci skip] Update NEWS 2018-09-04 11:01:24 +02:00
Anatol Belski 2476fb76a7 Fixed bug #76833, backport change to stream_socket_enable_crypto-win32.phpt from 7.3
It would probably be better to remove this test as it's too much
maintanance for a little gain.
2018-09-04 10:53:35 +02:00
Nikita Popov edec566d9b Merge branch 'PHP-7.1' into PHP-7.2 2018-09-04 05:49:02 +02:00
Nikita Popov 03740ef7df 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 d6e81f0bfd (avoid keeping "invalid" pointer)"

This reverts commit 11507c0e1b.

Revert "Fix mysqlnd build without openssl"

This reverts commit 6c9db02ff7.

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

This reverts commit f96df64cb2.

Revert "Fix MySQL 8 auth"

This reverts commit d6e81f0bfd.
2018-09-04 05:47:28 +02:00
Nikita Popov 08addfea86 Merge branch 'PHP-7.1' into PHP-7.2 2018-09-04 05:32:42 +02:00
Nikita Popov f1f39d7ed7 Fix parenthesis warning 2018-09-04 05:32:25 +02:00
Peter Kokot 870d893d0b 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.
2018-09-04 05:13:45 +02:00
Nikita Popov fcf78dfb89 Merge branch 'PHP-7.1' into PHP-7.2 2018-09-04 04:55:15 +02:00
Ville Hukkamaki 742783c3ee Fixed bug #73457
Correctly report errors when opening FTP data connection.
2018-09-04 04:53:38 +02:00
Anatol Belski a6b8651d94 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76832 ZendOPcache.MemoryBase periodically deleted by the OS
2018-09-03 15:10:25 +02:00
Anatol Belski f26172f934 Fixed bug #76832 ZendOPcache.MemoryBase periodically deleted by the OS 2018-09-03 15:09:23 +02:00
Dmitry Stogov accf5ed621 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed reference-countingin ZTS build.
2018-09-03 10:21:32 +03:00
Dmitry Stogov 7fde2243a7 Fixed reference-countingin ZTS build. 2018-09-03 10:20:40 +03:00
Jakub Zelenka cd0a37994e Fix stream_security_level.phpt with OpenSSL 1.1.1 2018-09-02 20:00:08 +01:00
Christoph M. Becker 7bcda659f8 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #75696: posix_getgrnam fails to print details of group
2018-09-01 14:28:13 +02:00
Christoph M. Becker 2677d43850 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.
2018-09-01 14:25:59 +02:00
Anatol Belski 1ccc4ff260 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix stack underflow in phar
2018-08-30 19:34:01 +02:00
Anatol Belski 7fb7869e13 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 b053beee7e)
2018-08-30 19:33:07 +02:00
Anatol Belski 58339f37e5 Switch to staging series on AppVeyor 2018-08-30 17:38:51 +02:00
Remi Collet 6e703c957e Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  fix double cast to int on 32-bit
2018-08-30 09:04:13 +02:00
Remi Collet c1729272b1 fix double cast to int on 32-bit 2018-08-30 09:03:50 +02:00
Dmitry Stogov fd5a453cb9 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed incorrect ZEND_ACC_ARENA_ALLOCATED usage (it must be used only for internal functions).
2018-08-29 23:41:14 +03:00
Dmitry Stogov 709e4e4f17 Fixed incorrect ZEND_ACC_ARENA_ALLOCATED usage (it must be used only for internal functions). 2018-08-29 23:40:17 +03:00
Sara Golemon 7881e92c24 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Prep for 7.1.23
2018-08-29 12:41:36 -04:00
Sara Golemon 5fee4e7108 Prep for 7.1.23 2018-08-29 12:41:05 -04:00
Remi Collet 7353dae815 bump to 7.2.11-dev 2018-08-28 10:17:33 +02:00
Christoph M. Becker 20849b0b0f Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #68180: iconv_mime_decode can return extra characters in a header
2018-08-26 13:21:22 +02:00
Christoph M. Becker efb86aef12 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.
2018-08-26 13:18:35 +02:00
Christoph M. Becker 314b8ecf8b Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #60494: iconv_mime_decode does ignore special characters
2018-08-25 17:47:29 +02:00
Christoph M. Becker e29c946c29 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.
2018-08-25 17:40:39 +02:00
Christoph M. Becker 7e176ddb57 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #63839: iconv_mime_decode_headers function is skipping headers
2018-08-25 14:52:54 +02:00
Christoph M. Becker 8754d44167 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.
2018-08-25 14:51:13 +02:00
Christoph M. Becker 6922cae4ae Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #55146: iconv_mime_decode_headers() skips some headers
2018-08-25 14:41:38 +02:00
Christoph M. Becker 6e1980e152 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`.
2018-08-25 14:40:07 +02:00
Anatol Belski 8f43ec1e83 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  mkdist.php: recursively check dll dependencies
2018-08-23 21:26:40 +02:00
Dylan K. Taylor b9bf9ddce6 mkdist.php: recursively check dll dependencies
Fix duplication of recursively checked deps
2018-08-23 21:25:54 +02:00
Christoph M. Becker 1c3d5659bd Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Simplify regression test
2018-08-23 12:49:26 +02:00
Christoph M. Becker 6644bd005f 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.
2018-08-23 12:48:09 +02:00
Christoph M. Becker 36946f5c45 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #68825: Exception in DirectoryIterator::getLinkTarget()
2018-08-22 15:38:30 +02:00
Christoph M. Becker 32a728d351 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.
2018-08-22 15:37:02 +02:00
Christoph M. Becker 10661e28d1 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Increase memory_limit to prevent test failures
2018-08-22 14:30:23 +02:00
Christoph M. Becker 5fb01a3a42 Increase memory_limit to prevent test failures 2018-08-22 14:29:28 +02:00
Christoph M. Becker cdd9eb8c4a Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #76778: array_reduce leaks memory if callback throws exception
2018-08-22 13:49:35 +02:00
Christoph M. Becker 70b2fca220 Fix #76778: array_reduce leaks memory if callback throws exception
We have to release the result variable in the error case, too.
2018-08-22 13:40:24 +02:00
Massimiliano Braglia 2527a0fcfd Fixed bug #75797
Fix zend_register_class_alias_ex() to use non-persistent strings
for (non-persistent) userland classes.
2018-08-22 13:39:08 +02:00
Christoph M. Becker 7ad0595712 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76777 and added test
2018-08-22 12:52:41 +02:00
Ville Hukkamaki cf2fc66b02 Fixed bug #76777 and added test
Set undefined values to null rather than undefined.
2018-08-22 12:51:06 +02:00
Jakub Zelenka 73a8f72617 Merge branch 'PHP-7.1' into PHP-7.2 2018-08-19 20:19:01 +01:00
Jakub Zelenka 4c542e6c13 Fix bug #76705 (unusable ssl => peer_fingerprint in stream_context_create()) 2018-08-19 20:14:26 +01:00
Anatol Belski b0da1745be Use stable deps on AppVeyor for now
as long as the latest image is not synced with VC++ 15.8
2018-08-18 20:04:19 +02:00
Christoph M. Becker 41d2102c77 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Add regression test for bug #68175
  Fix #68175: RegexIterator pregFlags are NULL instead of 0
2018-08-18 14:37:48 +02:00
Christoph M. Becker 4c448334bd Add regression test for bug #68175 2018-08-18 14:36:16 +02:00
Tim Siebels 3257d22fea Fix #68175: RegexIterator pregFlags are NULL instead of 0 2018-08-18 14:33:39 +02:00
Anatol Belski 4aa5065bb0 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Update binary SDK version for AppVeyor
2018-08-17 15:45:31 +02:00
Anatol Belski 837ed71c65 Update binary SDK version for AppVeyor 2018-08-17 15:44:10 +02:00
Xinchen Hui acd4264f7b Update NEWS 2018-08-17 13:35:46 +08:00
Xinchen Hui ca103b415e Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76754 (parent private constant in extends class memory leak)
2018-08-17 13:35:31 +08:00
Xinchen Hui 04c4854fdf Fixed bug #76754 (parent private constant in extends class memory leak) 2018-08-17 13:35:15 +08:00
Xinchen Hui a158fb958f Merge branch 'PHP-7.2' of git.php.net:/php-src into PHP-7.2
* 'PHP-7.2' of git.php.net:/php-src:
  fix man page installation
2018-08-16 14:01:17 +08:00
Xinchen Hui 64c88c1e16 Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:/php-src:
  fix man page installation
2018-08-16 14:00:30 +08:00
Xinchen Hui eb7fca9546 Update NEWS 2018-08-16 13:56:52 +08:00
Xinchen Hui a879f4dd22 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76747 (Opcache treats path containing "test.pharma.tld" as a phar file)
2018-08-16 13:56:37 +08:00
Xinchen Hui 8c92442b49 Fixed bug #76747 (Opcache treats path containing "test.pharma.tld" as a phar file) 2018-08-16 13:56:20 +08:00
Remi Collet 2cdde35d0f Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  fix man page installation
2018-08-16 06:54:57 +02:00
Remi Collet 1f2f2c6b96 fix man page installation
Since 91996e7ee5
phpdbg.1 is in buildir, not in srcdir
2018-08-16 06:53:56 +02:00
Christoph M. Becker 56abfd2798 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix arginfo for bzcompress
2018-08-13 16:00:25 +02:00
Tyson Andre e20baee136 Fix arginfo for bzcompress
bzcompress() has 1 required parameter, not 2.

See http://php.net/manual/en/function.bzcompress.php or invoke
bzcompress with 1 parameter.
2018-08-13 15:59:08 +02:00
Anatol Belski dd0fb4fd9b Update NEWS [ci skip] 2018-08-13 09:13:05 +02:00
Anatol Belski dc3f4f7342 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Update NEWS [ci skip]
2018-08-13 09:12:32 +02:00
Anatol Belski 859f7fce1f Update NEWS [ci skip] 2018-08-13 09:11:57 +02:00
Anatol Belski 9cc74ba229 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #74484 MessageFormatter::formatMessage memory corruption
2018-08-09 22:08:30 +02:00
Anatol Belski 45a05f3841 Fixed bug #74484 MessageFormatter::formatMessage memory corruption
with 11+ named placeholder
2018-08-09 22:07:24 +02:00
Peter Kokot 0b9a540dd7 [ci skip] Update NEWS 2018-08-06 09:42:32 +02:00
Peter Kokot f4777c6a51 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-08-06 09:41:54 +02:00
Peter Kokot 935625f1b8 [ci skip] Update NEWS 2018-08-06 09:41:38 +02:00
Peter Kokot fab7d9f577 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix bug #76709: Minimal required zlib library is 1.2.0.4
2018-08-06 09:39:33 +02:00
Peter Kokot a3e3d914ed Fix bug #76709: Minimal required zlib library is 1.2.0.4
The minimal required version of zlib system library is 1.2.0.4 instead
of 1.0.9 as reported in the ./configure --help.
2018-08-06 09:37:16 +02:00
Peter Kokot fa07b8bbb7 [ci skip] Update NEWS 2018-08-06 06:19:33 +02:00
Peter Kokot 86e9965c87 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-08-06 06:17:59 +02:00
Peter Kokot 4d5edcb4ac [ci skip] Update NEWS 2018-08-06 06:17:45 +02:00
Peter Kokot eceecb6900 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix bug #65988: Zlib version check fails
2018-08-06 06:15:51 +02:00
Jay Bonci c8a90606c1 Fix bug #65988: Zlib version check fails
When an 'include/zlib/' style dir is passed to --with-zlib configure
option the zlib version check fails.
2018-08-06 06:14:11 +02:00
Peter Kokot 8cbb381068 [ci skip] Update NEWS 2018-08-06 01:44:37 +02:00
Peter Kokot 6b092bcaae Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-08-06 01:44:07 +02:00
Peter Kokot b4b14d2106 [ci skip] Update NEWS 2018-08-06 01:43:37 +02:00
Peter Kokot 68ab719baa Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix bug #72443: Generate enabled extension
2018-08-06 01:28:39 +02:00
Peter Kokot 45a3c0e596 Fix bug #72443: Generate enabled extension
The PHP extension generator script now generates enabled extension with
less required steps for using the newly generated files.
2018-08-06 01:22:17 +02:00
Peter Kokot 6680d5f875 [ci skip] Update NEWS 2018-08-05 20:36:59 +02:00
Peter Kokot b9c3c1441a Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-08-05 20:36:33 +02:00
Peter Kokot 169a98319a [ci skip] Update NEWS 2018-08-05 20:35:23 +02:00
Peter Kokot 8d91e82871 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed incorrect restoring of LDFLAGS
2018-08-05 20:27:33 +02:00
sji 0f557756dd Fixed incorrect restoring of LDFLAGS 2018-08-05 20:26:40 +02:00
Peter Kokot 827abb843f [ci skip] Update NEWS
Bug fix #76595 has been done after the 7.2.9RC1 release and should go
to appropriate NEWS location then.
2018-08-04 16:19:47 +02:00
Peter Kokot 18db1ce211 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-08-04 16:17:26 +02:00
Peter Kokot fd0fc20d35 [ci skip] Update NEWS
Bug fix #76595 has been done after RC release and should go to
appropriate NEWS location then.
2018-08-04 16:16:07 +02:00
Christoph M. Becker db8bcdba80 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #76704: mb_detect_order return value varies based on argument type
2018-08-04 12:57:05 +02:00
Christoph M. Becker c00f5e6531 Fix #76704: mb_detect_order return value varies based on argument type
php_mb_parse_encoding_list() and php_mb_parse_encoding_array() are
supposed to return SUCCESS and FAILURE, not 1 and 0, respectively.
2018-08-04 12:51:57 +02:00
Peter Kokot ffae3fb25d [ci skip] Update NEWS 2018-08-04 06:40:31 +02:00
Peter Kokot fa59dc550d Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-08-04 06:39:33 +02:00
Peter Kokot b71a503844 [ci skip] Update NEWS 2018-08-04 06:39:19 +02:00
Peter Kokot 9286681bac Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix bug 76595: Update phpdbg man page
2018-08-04 06:35:40 +02:00
Kevin Abel 91996e7ee5 Fix bug 76595: Update phpdbg man page
Send phpdbg.1 man page through configure replacements
Update phpdbg.1 man page to include all options
Fixes formatting to be more consistent with php.1
Fix paragraph whitespace and ignore phpdbg.1
2018-08-04 06:34:40 +02:00
Anatol Belski 0872e80dd8 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Improve cleanup
2018-08-03 07:10:27 +02:00
Anatol Belski 41c69766a4 Improve cleanup
The persistent connection locks the file which might prevent deletion.
2018-08-03 07:08:53 +02:00
Anatol Belski 91a0a10f71 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix callbacks
  bump version
2018-08-02 21:20:04 +02:00
Anatol Belski 19592519c2 Fix callbacks
The signatures wasn't synced in 7.0
2018-08-02 18:59:34 +02:00
Sara Golemon 0ba49597b9 Roll NEWS for 7.2.10 2018-08-02 11:21:40 -04:00
Joe Watkins 74988eed99 bump version 2018-07-31 16:38:35 +02:00
Anatol Belski 095a30e11b Update NEWS [ci skip] 2018-07-30 19:43:23 +02:00
Anatol Belski e111ef5626 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Update NEWS [ci skip]
2018-07-30 19:42:45 +02:00
Anatol Belski 2870178720 Update NEWS [ci skip] 2018-07-30 19:42:10 +02:00
Anatol Belski d207d6a57f Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #75402 Possible Memory Leak using PDO::CURSOR_SCROLL option
2018-07-30 18:28:53 +02:00
Anatol Belski cc69950b15 Fixed bug #75402 Possible Memory Leak using PDO::CURSOR_SCROLL option 2018-07-30 18:27:59 +02:00
Christoph M. Becker ce66492a13 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #76665: SQLite3Stmt::bindValue() with SQLITE3_FLOAT doesn't juggle
2018-07-26 13:26:58 +02:00
Christoph M. Becker ed7e3bc70a Fix #76665: SQLite3Stmt::bindValue() with SQLITE3_FLOAT doesn't juggle
We need to ensure that a zval IS_DOUBLE before we access it as such.
In this case we apply common type juggling to do so.
2018-07-26 13:15:19 +02:00
Christoph M. Becker a96ca13963 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #76643: Segmentation fault when using `output_add_rewrite_var`
2018-07-24 12:28:22 +02:00
Christoph M. Becker 40bd84d3e3 Fix #76643: Segmentation fault when using output_add_rewrite_var
We have to check whether _SERVER is actually an array before we're
going to use it as such.
2018-07-24 12:20:13 +02:00
Xinchen Hui 033dac7a6f Update NEWs 2018-07-24 11:35:43 +08:00
Xinchen Hui 2a181b5ea0 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #68553 (array_column: null values in $index_key become incrementing keys in result)
2018-07-24 11:35:22 +08:00
Xinchen Hui 38d97557da Fixed bug #68553 (array_column: null values in $index_key become incrementing keys in result) 2018-07-24 11:34:57 +08:00
Xinchen Hui c20a97df6d Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed pefree_size (efree_size will be expaned to do {} while () form)
2018-07-23 15:48:52 +08:00
Xinchen Hui 2139c2c2de Fixed pefree_size (efree_size will be expaned to do {} while () form) 2018-07-23 15:48:14 +08:00
Christoph M. Becker 33eb30274f Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #52974: jewish.c: compile error under Windows with GBK charset
2018-07-22 17:59:38 +02:00
Christoph M. Becker 99fdf5916e Fix #52974: jewish.c: compile error under Windows with GBK charset
jewish.c includes ISO-8859-8 encoded Hebrew Hebrew month names, which
may cause compile errors, and is generally confusing.  We replace the
literal month names with appropriate escape sequences.
2018-07-22 17:42:10 +02:00
Anatol Belski 2073e96ec5 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Update binary SDK version for AppVeyor
2018-07-19 18:37:38 +02:00
Anatol Belski 9e54d9d692 Update binary SDK version for AppVeyor 2018-07-19 18:35:54 +02:00
Ferenc Kovacs ca618a4f10 Merge branch 'PHP-7.1' into PHP-7.2 2018-07-19 16:57:50 +02:00
Ferenc Kovacs 0510b47894 Merge branch 'PHP-7.0' into PHP-7.1 2018-07-19 16:57:18 +02:00
Ferenc Kovacs e5b27b9916 Merge branch 'PHP-5.6' into PHP-7.0 2018-07-19 16:56:32 +02:00
Ferenc Kovacs 1ba3314335 5.6.38 will be next 2018-07-19 16:54:58 +02:00
Anatol Belski b494d94f16 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  7.0.32 next
2018-07-17 12:37:51 +02:00
Anatol Belski dfc2e3a2ac Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  7.0.32 next
2018-07-17 12:37:02 +02:00
Anatol Belski d011da9d1a 7.0.32 next 2018-07-17 12:36:13 +02:00
Anatol Belski c4106d4569 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-07-17 11:59:17 +02:00
Anatol Belski 1127163996 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  [ci skip] Update NEWS
2018-07-17 11:58:43 +02:00
Anatol Belski b52c4fcbcd [ci skip] Update NEWS 2018-07-17 11:58:00 +02:00
Remi Collet e069b0beba NEWS 2018-07-17 06:07:28 +02:00
Stanislav Malyshev ebd5f56442 Fix test 2018-07-16 18:52:01 -07:00
Stanislav Malyshev a536d6d61b Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76459 windows linkinfo lacks openbasedir check
  Add NEWS
  Fixed bug #76459 windows linkinfo lacks openbasedir check
  Fix bug #76557: heap-buffer-overflow (READ of size 48) while reading exif data
  Fix bug #76423 - Int Overflow lead to Heap OverFlow in exif_thumbnail_extract of exif.c
2018-07-16 16:53:57 -07:00
Stanislav Malyshev 4e92cd172a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed bug #76459 windows linkinfo lacks openbasedir check
  Add NEWS
  Fixed bug #76459 windows linkinfo lacks openbasedir check
  Fix bug #76557: heap-buffer-overflow (READ of size 48) while reading exif data
  Fix bug #76423 - Int Overflow lead to Heap OverFlow in exif_thumbnail_extract of exif.c
2018-07-16 16:52:36 -07:00
Stanislav Malyshev bddf8140e4 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Add NEWS
  Fixed bug #76459 windows linkinfo lacks openbasedir check
  Fix bug #76557: heap-buffer-overflow (READ of size 48) while reading exif data
  Fix bug #76423 - Int Overflow lead to Heap OverFlow in exif_thumbnail_extract of exif.c
2018-07-16 15:13:13 -07:00
Anatol Belski f151e048ed Fixed bug #76459 windows linkinfo lacks openbasedir check 2018-07-16 15:11:56 -07:00
Stanislav Malyshev b73a108543 Add NEWS 2018-07-16 14:26:31 -07:00
Anatol Belski 289cb0f77c Fixed bug #76459 windows linkinfo lacks openbasedir check 2018-07-16 14:21:02 -07:00
Stanislav Malyshev 3462efa386 Fix bug #76557: heap-buffer-overflow (READ of size 48) while reading exif data
Use MAKERNOTE length as data size.
2018-07-16 14:17:51 -07:00
Stanislav Malyshev 1baeae4270 Fix bug #76423 - Int Overflow lead to Heap OverFlow in exif_thumbnail_extract of exif.c 2018-07-16 14:16:58 -07:00
Christoph M. Becker 8efd3c3387 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #73817: Incorrect entries in get_html_translation_table
2018-07-15 23:19:37 +02:00
Christoph M. Becker 0f8c1ee76d Fix #73817: Incorrect entries in get_html_translation_table
Due to incorrect string termination and length handling, several HTML
entities missed the trailing semicolon.

We also fix the obviously wrong expectations in two already existing
tests.
2018-07-15 23:06:38 +02:00
Anatol Belski dee191ee07 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Improve test
2018-07-13 20:14:44 +02:00
Anatol Belski 141072a838 Improve test
Ensure the filename is non existent indeed.
2018-07-13 20:13:51 +02:00
Anatol Belski f28aeaee05 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed RecursiveDirectoryIterator with long path or with edge case length
2018-07-12 19:57:08 +02:00
Anatol Belski 99fe18503a Fixed RecursiveDirectoryIterator with long path or with edge case length
The search path needs to be appended with the wild card. Till now, an
edge case existed, so then if a path is 259 bytes long, which is smaller
_MAX_PATH, the suffix would cause the final search path to become longer
than _MAX_PATH. It is an edge case, when the starting path happens to
have a specific length. If the starting path was longer than _MAX_PATH
or the addition of "\\*" would not exceed _MAX_PATH, the function was
correct. Except for rewind, which was broken in the case of the long
path.
2018-07-12 19:49:32 +02:00
Christoph M. Becker 77ced46dea Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix Travis build
2018-07-12 13:46:10 +02:00
Christoph M. Becker 236ae06e0b Fix Travis build
As of commit f9d1d1f[1] we require `sudo`, so we tell Travis about it.

[1] <http://git.php.net/?p=php-src.git;a=commit;h=f9d1d1f>
2018-07-12 13:45:30 +02:00
Anatol Belski 9443c61928 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix macro
2018-07-12 11:37:13 +02:00
Anatol Belski cc7b000d2c Fix macro 2018-07-12 11:35:00 +02:00
Anatol Belski cc266045a5 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix condition
2018-07-11 13:13:56 +02:00
Anatol Belski 98102648cb Fix condition
It looks like the real length limit is 247 bytes, not 248 as documented.
2018-07-11 13:09:20 +02:00
Anatol Belski a766f65ca3 [ci skip] Update NEWS 2018-07-10 11:51:49 +02:00
Anatol Belski c23736216d Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-07-10 11:51:11 +02:00
Anatol Belski 9026562c79 [ci skip] Update NEWS 2018-07-10 11:50:33 +02:00
Anatol Belski ebb590b625 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix bug #76524 - ZipArchive memory leak
2018-07-10 11:19:54 +02:00
timurib 08f08858f3 Fix bug #76524 - ZipArchive memory leak
Bugfix #76524: Free up zip internal state and adjust the tests for Windows

Bugfix #76524: Fix possible use after free for libzip 1.3.1

Bugfix #76524: Make the test independent of platform
2018-07-10 11:18:37 +02:00
Anatol Belski 474292c3e4 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Sync callback signature with libxml2 2.9.8
2018-07-09 21:24:51 +02:00
Anatol Belski a820aab9da Sync callback signature with libxml2 2.9.8 2018-07-09 21:21:41 +02:00
Anatol Belski a6e8c73c43 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Add missing flag
2018-07-09 15:14:30 +02:00
Anatol Belski 2c43fb49d6 Add missing flag 2018-07-09 15:12:52 +02:00
Anatol Belski 545a29d0cb Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix C++11 and up compatibility for zend_finite and more
2018-07-08 20:32:52 +02:00
Anatol Belski ad790bea2e Fix C++11 and up compatibility for zend_finite and more
C++11 puts isfinite, isinf, isnan and a lot of other stuff into the
std namespace. Thus, if a C++11 or newer source is compiled, these
symbols won't be available. A good solution would be to include cmath,
but depending on a particular compiler that might remove even more
stuff from the global namespace, so such a fix should only target master.
For now, just keep these defines same for C++11 and upper, as the actual
C++ code should use symbols from the std namespace anyway. This
especially concerns older GCC versions like at least 4 and 5, which are
used by default in the LTS Linux distros.
2018-07-08 20:20:08 +02:00
Dylan K. Taylor 77a841db48 Fixed regex for checking libzip static lib
This bug caused linking issues in debug mode (see bug [#76564](https://bugs.php.net/bug.php?id=76564))

This issue affects PHP 7.2 and master.
2018-07-07 17:32:16 +02:00
Nikita Popov 5d0d812a53 Merge branch 'PHP-7.1' into PHP-7.2 2018-07-07 12:08:02 +02:00
cdoco 47fb17b108 Fixed bug #76366 (references in sub-array for filtering breaks the filter) 2018-07-07 12:07:43 +02:00
Anatol Belski d207fd449c [ci skip] Update NEWS 2018-07-06 17:45:01 +02:00
Anatol Belski 1ae888d984 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-07-06 17:44:37 +02:00
Anatol Belski ea24847620 [ci skip] Update NEWS 2018-07-06 17:43:48 +02:00
Anatol Belski d85651d58d Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix event log handling in startup phase
  Fix bug #76488 Memory leak when fetching a BLOB field
  Fix year
  Bump version
2018-07-06 16:08:17 +02:00
Anatol Belski 246cb03e26 Fix event log handling in startup phase
The log header can be saved in the globals on startup. At the same
time, the log header can be changed per request. In case that
happened, wrong pointer will be free'd on shutdown. It can happen at
any point when zend_error() or similar is called at startup, like for
example in the case of the ini deprecation warnings. Thus, ZMM cannot
be used here.
2018-07-06 16:07:28 +02:00
sim1984 3847a6fcb6 Fix bug #76488 Memory leak when fetching a BLOB field
Add a phpt test
2018-07-06 16:07:28 +02:00
Sara Golemon 137f22ad36 Fix year 2018-07-06 10:02:20 -04:00
Sara Golemon 268e801cb1 Bump version 2018-07-06 10:02:00 -04:00
Nikita Popov f3dc67b255 Merge branch 'PHP-7.1' into PHP-7.2 2018-07-05 19:11:25 +02:00
Nikita Popov 791f07e4f0 Fix string.strip_tags filter
Was segfaulting if no allowed tags are specified and performing an
out of bounds read if they were.
2018-07-05 19:08:00 +02:00
Anatol Belski e5ef7cbe87 Fixed bug #76564 ext/zip link issues
Add zlib for linking directly, so then ext/zlib is not required.
2018-07-03 15:45:01 +02:00
Remi Collet 8bf21adb8c bump to 7.2.9-dev 2018-07-03 13:52:04 +02:00
Nikita Popov 9bbb9e537c Merge branch 'PHP-7.1' into PHP-7.2 2018-07-02 18:57:25 +02:00
Nikita Popov c97b8bbf82 Fixed bug #75231
The behavior is now consistent with ReflectionMethod.
2018-07-02 18:56:27 +02:00
Nikita Popov 3a236d0587 Merge branch 'PHP-7.1' into PHP-7.2 2018-07-02 17:59:15 +02:00
Nikita Popov 787593b708 Fix test after serialization change
And move it to a more appropriate location.
2018-07-02 17:58:26 +02:00
Nikita Popov 09bb2527e9 Merge branch 'PHP-7.1' into PHP-7.2 2018-07-02 17:29:32 +02:00
Nikita Popov c793885b76 Fixed bug #74670
Validate that "C" serialization payload is followed by "}" prior to
calling the unserialize() handler. This mitigates issues caused by
unserialize() not correctly handling strings that are not NUL
terminated. Making sure that there is a "}" at the end avoids the
problem.
2018-07-02 17:27:43 +02:00
Anatol Belski 26a33a96fa Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Update libs_version.txt
2018-07-02 12:12:02 +02:00
Anatol Belski f8258325b4 Update libs_version.txt 2018-07-02 12:09:54 +02:00
Christoph M. Becker 39d668e927 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Make newly introduced bug76556.phpt more resilient
2018-07-01 00:21:34 +02:00
Christoph M. Becker a72bab1b9a Make newly introduced bug76556.phpt more resilient
Obviously, different compilers mangle the C++ class name differently.
We should neither expect a prefix nor a suffix.
2018-07-01 00:20:32 +02:00
Christoph M. Becker ae163d9a36 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #76556: get_debug_info handler for BreakIterator shows wrong type
2018-06-30 23:17:54 +02:00
Christoph M. Becker 1118fca75d Fix #76556: get_debug_info handler for BreakIterator shows wrong type
We use the retrieved type for the "type" element instead of the text.
This has been confused during the PHP 7 upgrade[1].

[1] http://git.php.net/?p=php-src.git;a=commit;h=1d793348067e5769144c0f7efd86428a4137baec
2018-06-30 23:15:02 +02:00
Nikita Popov 0f1726e45d Merge branch 'PHP-7.1' into PHP-7.2 2018-06-30 20:11:39 +02:00
Nikita Popov 9b0df97a42 Fix handling of void return type on internal functions 2018-06-30 20:10:57 +02:00
Nikita Popov 34deda13a8 Merge branch 'PHP-7.1' into PHP-7.2 2018-06-30 19:50:40 +02:00
Nikita Popov 2eb6a541a9 Fix typo in compound dim assign op inference
Thankfully a harmless one, just makes inference results worse.
2018-06-30 19:50:07 +02:00
Christoph M. Becker e2285eb542 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #71848: getimagesize with $imageinfo returns false
2018-06-30 16:40:32 +02:00
Christoph M. Becker ae04110032 Fix #71848: getimagesize with $imageinfo returns false
Some JFIF images contain empty APP segments, i.e. those which consist
only of the marker bytes and the length, but without actual content.
It appears to be doubtful to have empty APP segments, but we should
apply the robustness principle, and accept these, instead of simply
failing in this case.

We choose to add empty APP segments to $imageinfo with an empty string
as value, instead of NULL, or even to omit these segments altogether.

This patch also fixes the potential issue that php_stream_read() might
not read the supposed number of bytes, which could result in garbage to
be added to the read value.
2018-06-30 16:29:30 +02:00
Nikita Popov deb1bad80f Merge branch 'PHP-7.1' into PHP-7.2 2018-06-29 23:23:02 +02:00
Nikita Popov 962706d16c Fix nullable type pretty-printing 2018-06-29 23:22:41 +02:00
Anatol Belski 15ad5d31d1 [ci skip] Update NEWS 2018-06-29 20:11:55 +02:00
Anatol Belski ef274e0b60 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-06-29 20:11:23 +02:00
Anatol Belski fb09f1341f [ci skip] Update NEWS 2018-06-29 20:10:54 +02:00
Anatol Belski 486f18f09e Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76548 pg_fetch_result did not fetch the next row
2018-06-29 18:35:44 +02:00
Anatol Belski cb97fd3097 Fixed bug #76548 pg_fetch_result did not fetch the next row 2018-06-29 18:34:53 +02:00
Nikita Popov 00c0d7702c Merge branch 'PHP-7.1' into PHP-7.2 2018-06-28 23:05:09 +02:00
Marcus Schwarz bf5a802f5a Fixed bug #76532 (excessive memory usage in mb_strimwidth) 2018-06-28 23:02:28 +02:00
Anatol Belski c5276ad380 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Update SDK version for AppVeyor
2018-06-28 15:58:20 +02:00
Anatol Belski f6430e3fe2 Update SDK version for AppVeyor 2018-06-28 15:56:27 +02:00
Anatol Belski e835916f65 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Sync versions for VC++ 15.8
2018-06-28 13:28:46 +02:00
Anatol Belski 88b5df91f6 Sync versions for VC++ 15.8 2018-06-28 13:23:19 +02:00
Anatol Belski b35f45ded2 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Don't ignore commits on NEWS, etc. on AppVeyor
2018-06-28 10:54:59 +02:00
Anatol Belski 19b4fa17d3 Don't ignore commits on NEWS, etc. on AppVeyor
[ci skip] can be used explicitly, and otherwise it might ignore commits
with a code change.
2018-06-28 10:53:23 +02:00
Xinchen Hui 809a7b5f8f Update NEWS 2018-06-28 12:38:14 +08:00
Xinchen Hui 5d7f9dcca7 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76536 (PHP crashes with core dump when throwing exception in error handler). (Laruence)
2018-06-28 12:37:58 +08:00
Xinchen Hui 1f6b842af4 Fixed bug #76536 (PHP crashes with core dump when throwing exception in error handler). (Laruence) 2018-06-28 12:37:33 +08:00
Xinchen Hui 7b98d056d3 Update NEWS 2018-06-27 13:07:53 +08:00
Xinchen Hui 3521661bd1 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76534 (PHP hangs on 'illegal string offset on string references with an error handler)

Conflicts:
	Zend/zend_execute.c
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
2018-06-27 13:07:36 +08:00
Xinchen Hui d1b1866a3a Fixed bug #76534 (PHP hangs on 'illegal string offset on string references with an error handler) 2018-06-27 13:05:11 +08:00
Christoph M. Becker 2458dab466 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix arginfo wrt. optional/required parameters
2018-06-25 11:54:45 +02:00
Christoph M. Becker 6b5597f7d8 Fix arginfo wrt. optional/required parameters
All parameters of phpdbg_color(), phpdbg_exec() and phpdbg_prompt() are
required.  We mark them as such.
2018-06-25 11:52:17 +02:00
Anatol Belski 096fd88dcb Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Prepare tests for ICU 62.1
2018-06-25 11:31:21 +02:00
Anatol Belski 5af0db88fa Prepare tests for ICU 62.1 2018-06-25 11:30:14 +02:00
Nikita Popov 14b22704c7 Merge branch 'PHP-7.1' into PHP-7.2 2018-06-24 22:28:57 +02:00
Nikita Popov 701460ba84 Fixed bug #76502 2018-06-24 22:26:45 +02:00
Nikita Popov ed9d1b708b Fixed bug #76520 2018-06-22 16:22:04 +02:00
Dmitry Stogov 4a4c72a82a Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Added parenthesis
2018-06-22 12:04:39 +03:00
Dmitry Stogov 1f726c9925 Added parenthesis 2018-06-22 12:04:23 +03:00
Jakub Zelenka d95ee27551 Make new openssl ext tests in 7.2 consitent 2018-06-21 17:02:44 +01:00
Jakub Zelenka 77bd405959 Merge branch 'PHP-7.1' into PHP-7.2 2018-06-21 16:47:08 +01:00
Jakub Zelenka b20bcbc363 Use unix NL in all openssl ext tests 2018-06-21 16:43:32 +01:00
Jakub Zelenka 3c42f64e6e Make code in openssl ext tests more consistent
Mainly use spaces for indent and fix some other CS issues. Also
drop checks for unsupported OpenSSL library versions.
2018-06-21 16:38:19 +01:00
Xinchen Hui e62c6e7dbe Update NEWS 2018-06-21 17:26:45 +08:00
Xinchen Hui 939e1095f2 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76505 (array_merge_recursive() is duplicating sub-array keys)
2018-06-21 17:26:27 +08:00
Xinchen Hui 6531719da5 Fixed bug #76505 (array_merge_recursive() is duplicating sub-array keys) 2018-06-21 17:26:05 +08:00
Stanislav Malyshev 011be49dda Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Revert "ICU 59+ requires C++11 and errors out without the option"
2018-06-20 10:41:59 -07:00
Stanislav Malyshev bcf2e10ae7 Revert "ICU 59+ requires C++11 and errors out without the option"
This reverts commit 5dd1ef90ca.
2018-06-20 10:41:41 -07:00
Nikita Popov 44f4d2be01 Merge branch 'PHP-7.1' into PHP-7.2 2018-06-20 12:30:19 +02:00
Nikita Popov 69dee5c732 Fixed bug #73342
Directly listen on socket, instead of duping it to STDIN and
listening on that.
2018-06-20 12:28:15 +02:00
Stanislav Malyshev 61a4fc4e44 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  ICU 59+ requires C++11 and errors out without the option
2018-06-17 16:42:49 -07:00
Stanislav Malyshev 5dd1ef90ca ICU 59+ requires C++11 and errors out without the option 2018-06-17 16:42:41 -07:00
Pedro Magalhães 13e9a471d7 Fix #76300 - Dont attempt to change visibility of a parent private 2018-06-17 15:53:55 -07:00
Xinchen Hui f31ba7cb53 Fixed bug #76477 (Opcache causes empty return value) 2018-06-15 16:31:31 +08:00
Dmitry Stogov dad8bd5851 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed invalid free introduced by d6e81f0bfd (avoid keeping "invalid" pointer)
2018-06-14 02:40:59 +03:00
Dmitry Stogov 11507c0e1b Fixed invalid free introduced by d6e81f0bfd (avoid keeping "invalid" pointer) 2018-06-14 02:38:39 +03:00
Nikita Popov d04a1e8d70 Merge branch 'PHP-7.1' into PHP-7.2 2018-06-13 23:48:28 +02:00
Nikita Popov e77077edeb Make $locale parameter to BreakIterator ctors optional
It's documented as such and already accepts null.
2018-06-13 23:47:20 +02:00
Jakub Zelenka dd622f9ca9 Port FPM test 023 and 024 to the new FPM testing 2018-06-12 18:09:27 +01:00
Jakub Zelenka bc58ba750f Merge branch 'PHP-7.1' into PHP-7.2 2018-06-12 18:03:01 +01:00
Jakub Zelenka ea592e6b6c Rewrite FPM tests 2018-06-12 17:59:28 +01:00
Anatol Belski 827cb0484e [ci skip] Update NEWS 2018-06-12 18:07:35 +02:00
Anatol Belski 87cb883563 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-06-12 18:07:11 +02:00
Anatol Belski 62554efffe [ci skip] Update NEWS 2018-06-12 18:06:41 +02:00
Anatol Belski 5f1190684f Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76462 Undefined property: DateInterval::$f
2018-06-12 15:31:01 +02:00
Anatol Belski 7212829435 Fixed bug #76462 Undefined property: DateInterval::$f 2018-06-12 15:30:14 +02:00
Remi Collet eb2a3c6c65 NEWS 2018-06-12 09:35:52 +02:00
Remi Collet 075e685439 Add OPSYS_CPM constant as documented and to match libzip naming 2018-06-12 09:31:41 +02:00
Anatol Belski 7dcfa839c9 Remove inappropriate FreeLibrary call 2018-06-11 13:49:42 +02:00
Nikita Popov 3d7284d09e Merge branch 'PHP-7.1' into PHP-7.2 2018-06-10 21:21:11 +02:00
Nikita Popov 6c9db02ff7 Fix mysqlnd build without openssl
Cherry-pick of 968eb0b38c, as these
changes were also introduced in lower branches.
2018-06-10 21:20:28 +02:00
Jakub Zelenka bca6d373fc Merge branch 'PHP-7.1' into PHP-7.2 2018-06-10 14:33:28 +01:00
Anatol Belski 66badcdc0c Fix test portability 2018-06-09 20:57:17 +02:00
Christoph M. Becker 3fdde65617 Fix #76409: heap use after free in _php_stream_free
We must not close the stream in exif_read_from_impl(), since it is the
responsibility of the (caller's) caller to do so, if it actually opened
the stream.

We simplify the reproduce script, which is actually about supplying a
path to a directory (opposed to a regular file), and use `.` instead of
`/` to also make it work on Windows.
2018-06-09 17:52:05 +02:00
Nikita Popov e029019275 Deduplicate code using php_timezone_to_string()
Looks like this usage was overlooked when the function was
introduced.
2018-06-08 23:10:43 +02:00
David Carlier ad52ec3db8 cast to int to disable compilation warnings. 2018-06-08 23:08:42 +02:00
Keyur Govande 695b8192c7 Avoid leaking the urandom fd
When Apache is reloaded, it unloads the extension, but the open file descriptor to /dev/urandom is left hanging around and is leaked. This fixes the bug.

Duplicate of https://github.com/jedisct1/libsodium-php/pull/173
2018-06-08 23:01:57 +02:00
Jakub Zelenka f9d1d1f36f Enable IPv6 in Travis 2018-06-08 20:09:33 +01:00
Joe Watkins e9b8193b24 bump versions 2018-06-07 08:19:43 +02:00
Anatol Belski 0bafb530d6 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix VC compilation as variable size array is not supported
  Fix MySQL 8 auth
2018-06-06 11:14:15 +02:00
Anatol Belski f96df64cb2 Fix VC compilation as variable size array is not supported 2018-06-06 11:13:28 +02:00
Johannes Schlüter 04db3d0f7a Merge branch 'PHP-7.1' of git.php.net:/php-src into PHP-7.1 2018-06-06 00:24:41 +02:00
Johannes Schlüter d6e81f0bfd Fix MySQL 8 auth 2018-06-06 00:17:34 +02:00
Sara Golemon 917222f395 NEWS for 7.2.8 2018-06-05 12:07:52 -04:00
Xinchen Hui 951e29f66e Fixed bug #76410 (SIGV in zend_mm_alloc_small) 2018-06-05 17:15:57 +08:00
Stanislav Malyshev 5fbb0988d1 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix bug #76390 - do not allow invalid strings in range()
2018-06-04 22:51:38 -07:00
Stanislav Malyshev 73bf238507 Fix bug #76390 - do not allow invalid strings in range() 2018-06-04 22:44:05 -07:00
Anatol Belski d5ee654b71 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Translate correct C++ version with suitable compiler
  Fixed bug #76383 (array_map on $GLOBALS returns IS_INDIRECT)
2018-05-28 17:13:55 +02:00
Anatol Belski 5bf8032112 Translate correct C++ version with suitable compiler 2018-05-28 17:12:06 +02:00
Bob Weinand 97a8483143 Fixed bug #76383 (array_map on $GLOBALS returns IS_INDIRECT) 2018-05-28 00:48:35 +02:00
Nikita Popov 4455899a93 Merge branch 'PHP-7.1' into PHP-7.2 2018-05-26 22:06:44 +02:00
Mitch Hagstrand 34fb42970a Adds print_global_vars to gdbinit 2018-05-26 22:05:06 +02:00
Peter Kokot 974c46b89b Add missing opcache.opt_debug_level ini directive 2018-05-26 22:04:20 +02:00
Joe Watkins a422b1e60c Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  fix phpdbg disabling chroot support
2018-05-23 22:23:53 +02:00
Joe Watkins be11b354f4 fix phpdbg disabling chroot support 2018-05-23 22:23:13 +02:00
Xinchen Hui a9d00be024 Update NEWS 2018-05-23 14:46:18 +08:00
Xinchen Hui dc461d6f56 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76367 (NoRewindIterator segfault 11)
2018-05-23 14:46:01 +08:00
Xinchen Hui 8f221bdec0 Fixed bug #76367 (NoRewindIterator segfault 11) 2018-05-23 14:45:38 +08:00
Jakub Zelenka a231860b02 Merge branch 'PHP-7.1' into PHP-7.2 2018-05-22 13:40:23 +01:00
Jakub Zelenka 68c3d09c2c Fix bug #76174 (openssl extension fails to build with LibreSSL 2.7) 2018-05-22 13:30:58 +01:00
Anatol Belski 1c8c06a403 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Allow pecl like usage in ext/pdo, refs #2955
2018-05-21 12:19:45 +02:00
Tianon Gravi bc6ddb7f45 Allow pecl like usage in ext/pdo, refs #2955 2018-05-21 12:18:46 +02:00
Anatol Belski 364fad275e [ci skip] Update NEWS 2018-05-20 14:27:23 +02:00
xKhorasan 5681f6523b Fixed bug #76337 2018-05-20 13:33:03 +02:00
Anatol Belski a8a1dc038c Fix versions, as 7.2.6RC is already out 2018-05-19 15:44:23 +02:00
Anatol Belski aebbf38df5 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Refix the tests once more
2018-05-19 13:11:39 +02:00
Anatol Belski 83626ef97a Refix the tests once more
The behavior change seems to be in both runtime and system. The
displaced warning output is of secondary interest anyway.
2018-05-19 13:09:56 +02:00
Anatol Belski 6fc405e851 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix remaining AppVeyor test failures due to the image update
2018-05-19 11:44:26 +02:00
Anatol Belski 589f8107e8 Fix remaining AppVeyor test failures due to the image update 2018-05-19 11:43:19 +02:00
Anatol Belski f7b431fb30 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix Opcache test fails regarding to AppVeyor image update
2018-05-18 18:37:53 +02:00
Anatol Belski 6043a2d6f7 Fix Opcache test fails regarding to AppVeyor image update 2018-05-18 18:36:39 +02:00
Jakub Zelenka b027071688 Merge branch 'PHP-7.1' into PHP-7.2 2018-05-18 17:23:17 +01:00
Jakub Zelenka 33382dc7ee Update NEWS with info about bug #76296 2018-05-18 17:18:25 +01:00
Jakub Zelenka 798e707eb3 Add test for bug #76296 2018-05-18 17:15:36 +01:00
Erik Lax d6bc266ba0 Fix bug #76296 (openssl_pkey_get_public does not respect open_basedir) 2018-05-18 17:15:22 +01:00
Anatol Belski e470068293 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix curl tests wrt. AppVeyor and curl updates
2018-05-18 17:43:58 +02:00
Anatol Belski b2429259af Fix curl tests wrt. AppVeyor and curl updates 2018-05-18 17:39:12 +02:00
Anatol Belski a8422edced Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix cli server test fails after recent AppVeyor image update
2018-05-18 13:40:42 +02:00
Anatol Belski ee0ca6470d Fix cli server test fails after recent AppVeyor image update 2018-05-18 13:38:53 +02:00
Anatol Belski c8ab9e1e53 [ci skip] Update NEWS 2018-05-14 12:09:36 +02:00
Anatol Belski 11e36411c1 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-05-14 12:08:52 +02:00
Anatol Belski 2d9836a579 [ci skip] Update NEWS 2018-05-14 12:08:01 +02:00
Anatol Belski 1228f31cd2 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76335 "link(): Bad file descriptor" with non-ASCII path
2018-05-14 10:44:49 +02:00
Anatol Belski 9b8d8cac04 Fixed bug #76335 "link(): Bad file descriptor" with non-ASCII path 2018-05-14 10:43:11 +02:00
Anatol Belski cbee239262 [ci skip] Update NEWS 2018-05-14 08:44:50 +02:00
Anatol Belski 683635dff6 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-05-14 08:43:10 +02:00
Anatol Belski 4dedccd8e2 [ci skip] Update NEWS 2018-05-14 08:42:28 +02:00
Anatol Belski 398204ace9 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76333 PHP built-in server does not find files if root path contains special characters
2018-05-13 18:42:36 +02:00
Anatol Belski ad787626a4 Fixed bug #76333 PHP built-in server does not find files if root path contains special characters 2018-05-13 18:40:32 +02:00
Anatol Belski 41aa83f0c2 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Update SDK version for AppVeyor
  bump versions
2018-05-09 11:30:09 +02:00
Anatol Belski d21612401f Update SDK version for AppVeyor 2018-05-09 11:28:20 +02:00
Joe Watkins 6c3b70e9a5 bump versions 2018-05-08 18:02:30 +02:00
Derick Rethans 1a25137a69 Updated to version 2018.5 (2018e) 2018-05-08 09:24:27 +01:00
Derick Rethans 348b5eb434 Empty merge 2018-05-08 09:24:27 +01:00
Derick Rethans d057d767cc Updated to version 2018.5 (2018e) 2018-05-08 09:24:25 +01:00
Anatol Belski 8ad44700cf Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Update _bits_per_char to use with new PHP 7.1. or greater
2018-05-07 14:42:51 +02:00
Ricardo F ea642026eb Update _bits_per_char to use with new PHP 7.1. or greater
Fix typo

Remove references to PHP lower than 7.1
2018-05-07 14:41:49 +02:00
Anatol Belski 637e47a5ed [ci skip] Update NEWS 2018-05-06 16:15:42 +02:00
Anatol Belski 538ff93876 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-05-06 16:15:13 +02:00
Anatol Belski 54ca2e7f8c [ci skip] Update NEWS 2018-05-06 16:13:26 +02:00
Anatol Belski b00a5c03e6 [ci skip] Update libs_version.txt 2018-05-06 16:10:10 +02:00
Anatol Belski b0def5bde9 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix tests, ref bug #74385
2018-05-03 17:16:42 +02:00
Anatol Belski 6b85926104 Fix tests, ref bug #74385 2018-05-03 17:15:47 +02:00
Anatol Belski e01d0387d1 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #74385 Locale::parseLocale() broken with some arguments
2018-05-03 16:43:59 +02:00
Anatol Belski f59b201f19 Fixed bug #74385 Locale::parseLocale() broken with some arguments
Rely on the ICU's defined values for the max locale id length.
2018-05-03 16:34:33 +02:00
Dmitry Stogov 3fe2e2a372 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76205 (PHP-FPM sporadic crash when running Infinitewp)
2018-05-03 12:11:07 +03:00
Dmitry Stogov 5b3e1ded35 Fixed bug #76205 (PHP-FPM sporadic crash when running Infinitewp) 2018-05-03 12:10:33 +03:00
Anatol Belski afc3f6e8d5 Fix shared ext/zip build with static dependency lib 2018-05-02 17:26:37 +02:00
Thomas Punt 3139be0bea Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix potential memory leak in the enchant extension
  Fix potential memory leak in curl extension
2018-04-29 20:04:18 +01:00
Thomas Punt 7ba70a5fed Fix potential memory leak in the enchant extension 2018-04-29 19:23:07 +01:00
Thomas Punt d3ae4fe2d2 Fix potential memory leak in curl extension 2018-04-29 19:04:10 +01:00
Thomas Punt beab622265 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  The SO_PASSCRED constant is conditionally defined
2018-04-29 17:38:12 +01:00
Thomas Punt 35713efa02 The SO_PASSCRED constant is conditionally defined 2018-04-29 17:34:03 +01:00
Thomas Punt d990b9316a Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix potential memory leaks in sockets extension
2018-04-28 13:57:30 +01:00
Thomas Punt 7f090ac16a Merge branch 'PHP-7.1' of https://git.php.net/push/php-src into PHP-7.1 2018-04-28 13:56:09 +01:00
Thomas Punt 643c9c9b47 Fix potential memory leaks in sockets extension 2018-04-28 13:55:24 +01:00
Dmitry Stogov a0d8cedd2b Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Revert "Fixed bug #76205 (PHP-FPM sporadic crash when running Infinitewp)."
2018-04-28 13:29:05 +03:00
Dmitry Stogov df4d0a73d2 Revert "Fixed bug #76205 (PHP-FPM sporadic crash when running Infinitewp)."
This reverts commit c6ce03e45e.
2018-04-28 13:28:00 +03:00
Dmitry Stogov f8c1ce18e9 Revert "Merge branch 'PHP-7.1' into PHP-7.2"
This reverts commit c547c1b980, reversing
changes made to 4c083e7a66.
2018-04-28 13:27:36 +03:00
Dmitry Stogov c547c1b980 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76205 (PHP-FPM sporadic crash when running Infinitewp).
2018-04-28 00:24:56 +03:00
Dmitry Stogov c6ce03e45e Fixed bug #76205 (PHP-FPM sporadic crash when running Infinitewp). 2018-04-28 00:19:53 +03:00
Nikita Popov 4c083e7a66 Merge branch 'PHP-7.1' into PHP-7.2 2018-04-27 22:23:55 +02:00
Nikita Popov 6738d19fb8 Fix bug #76281
Make sure we keep the smart-branch inhibiting NOP even if there
are multiple NOPs in sequence.
2018-04-27 22:21:59 +02:00
Nikita Popov 2c602be7c8 Merge branch 'PHP-7.1' into PHP-7.2 2018-04-27 17:02:01 +02:00
Nikita Popov 279ba58edb Fixed bug #76275
* Adjust IS_SERIALIZED() check to account for potential empty
  allocations at the end of the memory region.
* Deallocate empty allocation if all try/catch elements have been
  removed in the block pass (similar to what we do if all live
  ranges have been eliminated).
2018-04-27 17:01:35 +02:00
Thomas Punt 972c4869a7 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Allocate default ini values into persistent memory
2018-04-26 21:09:08 +01:00
Thomas Punt 2513da4b4c Allocate default ini values into persistent memory 2018-04-26 21:08:19 +01:00
Thomas Punt b3fff5fc41 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix memory leak when phpdbg fails to start up
2018-04-26 16:42:21 +01:00
Thomas Punt 435e812c09 Fix memory leak when phpdbg fails to start up 2018-04-26 16:39:52 +01:00
Nikita Popov 7c852a7961 Merge branch 'PHP-7.1' into PHP-7.2 2018-04-26 16:17:13 +02:00
shiguangqi2008@gmail.com 98ef183ed0 Fix memory leak in zend_disable_class() 2018-04-26 16:16:37 +02:00
Scott Arciszewski 8677edb2dd Update NEWS
Add whitespace in NEWS file
2018-04-25 07:39:31 +02:00
Ferenc Kovacs 029a60b2c7 Merge branch 'PHP-7.1' into PHP-7.2 2018-04-25 00:16:12 +02:00
Ferenc Kovacs 127273327b Merge branch 'PHP-7.0' into PHP-7.1 2018-04-25 00:14:33 +02:00
Ferenc Kovacs 5ac5f313bd Merge branch 'PHP-5.6' into PHP-7.0 2018-04-25 00:13:11 +02:00
Ferenc Kovacs fe3d53f443 5.6.37 will be next 2018-04-24 23:23:14 +02:00
Remi Collet 42344cdc53 update NEWS for 7.2.5 2018-04-24 17:28:05 +02:00
Anatol Belski d8f2e1a511 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  7.0.31 next
2018-04-24 11:37:57 +02:00
Anatol Belski 4b42056042 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  7.0.31 next
2018-04-24 11:37:10 +02:00
Anatol Belski 090fef553d 7.0.31 next 2018-04-24 11:36:12 +02:00
Anatol Belski 6e5287bb95 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-04-24 11:24:10 +02:00
Anatol Belski befdc10c32 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  [ci skip] Update NEWS
2018-04-24 11:21:44 +02:00
Anatol Belski 31c3646757 [ci skip] Update NEWS 2018-04-24 11:21:03 +02:00
Anatol Belski 1df43a086f Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix test portability
2018-04-24 10:49:15 +02:00
Anatol Belski 919ead1157 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix test portability
2018-04-24 10:48:49 +02:00
Anatol Belski 3070883bcf Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix test portability
2018-04-24 10:48:22 +02:00
Anatol Belski 4371af3e19 Fix test portability 2018-04-24 10:47:32 +02:00
Stanislav Malyshev 4c06d929c0 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix tsrm_ls
  Fix #76129 - remove more potential unfiltered outputs for phar
  Fix test
  Fix bug #76248 - Malicious LDAP-Server Response causes Crash
  Fix bug #76249 - fail on invalid sequences
  Fix #76130: Heap Buffer Overflow (READ: 1786) in exif_iif_add_value
  Fix bug #75981: prevent reading beyond buffer start
2018-04-23 22:03:33 -07:00
Stanislav Malyshev 95ee9efa57 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix tsrm_ls
  Fix #76129 - remove more potential unfiltered outputs for phar
  Fix test
  Fix bug #76248 - Malicious LDAP-Server Response causes Crash
  Fix bug #76249 - fail on invalid sequences
  Fix #76130: Heap Buffer Overflow (READ: 1786) in exif_iif_add_value
  Fix bug #75981: prevent reading beyond buffer start
2018-04-23 22:00:24 -07:00
Stanislav Malyshev 5a18d7a0df Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix tsrm_ls
  Fix #76129 - remove more potential unfiltered outputs for phar
  Fix test
  Fix bug #76248 - Malicious LDAP-Server Response causes Crash
  Fix bug #76249 - fail on invalid sequences
  Fix #76130: Heap Buffer Overflow (READ: 1786) in exif_iif_add_value
  Fix bug #75981: prevent reading beyond buffer start
2018-04-23 21:59:57 -07:00
Stanislav Malyshev ee76a5ae5a Fix tsrm_ls 2018-04-23 16:48:27 -07:00
Stanislav Malyshev 58b0003975 Merge remote-tracking branch 'security/bug76249' into PHP-5.6
* security/bug76249:
  Fix test
  Fix bug #76249 - fail on invalid sequences
2018-04-23 13:44:19 -07:00
Stanislav Malyshev a4c55eefd0 Merge remote-tracking branch 'security/bug76248' into PHP-5.6
* security/bug76248:
  Fix bug #76248 - Malicious LDAP-Server Response causes Crash
2018-04-23 13:44:12 -07:00
Stanislav Malyshev 6e64aba47f Fix #76129 - remove more potential unfiltered outputs for phar 2018-04-23 13:43:43 -07:00
Stanislav Malyshev e2dcf3cc54 Merge remote-tracking branch 'security/PHP-5.6' into PHP-5.6
* security/PHP-5.6:
  Fix #76130: Heap Buffer Overflow (READ: 1786) in exif_iif_add_value
  Fix bug #75981: prevent reading beyond buffer start
2018-04-23 13:42:51 -07:00
Stanislav Malyshev 8dca5ae5ec Fix test 2018-04-22 22:19:51 -07:00
Stanislav Malyshev 49782c5499 Fix bug #76248 - Malicious LDAP-Server Response causes Crash 2018-04-22 22:01:35 -07:00
Stanislav Malyshev 06d309fd7a Fix bug #76249 - fail on invalid sequences 2018-04-22 21:26:39 -07:00
Stanislav Malyshev 83e7618f05 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Add a bit of defensive conding for bug #76155
2018-04-22 20:28:35 -07:00
Stanislav Malyshev ff83c00715 Add a bit of defensive conding for bug #76155
Even though it should not be ever negative, since strlen() is size_t
better to be safe than sorry.
2018-04-22 20:27:42 -07:00
Christoph M. Becker b4e4788c44 Fix #76130: Heap Buffer Overflow (READ: 1786) in exif_iif_add_value
The MakerNote is not necessarily null-terminated, so we must not use
`strlen()` to avoid OOB reads.  Instead `php_strnlen()` is the proper
way to handle this.
2018-04-22 20:15:02 -07:00
Jakub Zelenka 98e43a33c8 Merge branch 'PHP-7.1' into PHP-7.2 2018-04-15 20:42:28 +01:00
Jakub Zelenka 2ef8809ef3 Make openssl_error_string test work in OpenSSL 1.1.1
It was the only failing test
2018-04-15 20:41:23 +01:00
Nikita Popov ac732d75bd Merge branch 'PHP-7.1' into PHP-7.2 2018-04-14 13:06:00 +02:00
Aron Rotteveel 9090a21de0 reset imap_errorstack after outputting it
This happens in `imap_errors` as well, but seems to be omitted in the `shutdown` routine.
2018-04-14 13:04:40 +02:00
Jakub Zelenka b8aec1e725 Merge branch 'PHP-7.1' into PHP-7.2 2018-04-13 20:17:52 +01:00
Jakub Zelenka 4e407b8777 [ci skip] Update NEWS with fpm acl fix 2018-04-13 20:17:24 +01:00
Jakub Zelenka 4302c0b542 Merge branch 'PHP-7.1' into PHP-7.2 2018-04-13 20:12:03 +01:00
Michał Górny 4ea7f3467d Support using acl_* functions on *BSD
The *BSD systems have ACL routines built-in in libc rather than
in separate libacl. Update the configure check to detect that and enable
ACL support without adding 'acl' library.
2018-04-13 19:48:13 +01:00
Christoph M. Becker 3770c2e463 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix arginfo for array_replace(_recursive) and array_merge(_recursive)
2018-04-13 15:28:47 +02:00
Gabriel Caruso bb79e5764b Fix arginfo for array_replace(_recursive) and array_merge(_recursive) 2018-04-13 15:27:16 +02:00
Christoph M. Becker 281a1754b9 Fix #76164: exif_read_data zend_mm_heap corrupted
We must not release parsed parameters ourselves, since this is already
done by the engine.
2018-04-12 23:00:37 +02:00
Anatol Belski 9f4905fb0d Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix memory leak
2018-04-12 18:25:58 +02:00
Anatol Belski 5fe6d2134b Fix memory leak 2018-04-12 18:25:27 +02:00
Anatol Belski ab68d90057 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  bump versions
2018-04-12 18:23:23 +02:00
Christoph M. Becker ab200bd660 [ci skip] Update NEWS
Cf. 68296c4055.
2018-04-12 18:11:41 +02:00
Andrew Nester 68296c4055 Fixed #74892 - Fixed URL rewriting for urls started with #
(cherry picked from commit 6c32d271d2)

This should have already been merged via
9cd82df0bb, but that merge went wrong.
2018-04-12 17:28:35 +02:00
Joe Watkins 9322b43d65 bump versions 2018-04-11 08:08:52 +02:00
Remi Collet 0d87a0ba57 next is 7.2.6 2018-04-11 07:53:53 +02:00
George Wang 043ac320a0 Merge branch 'PHP-7.1' into PHP-7.2 2018-04-10 16:49:29 -04:00
George Wang 5b529bbc94 Updated LiteSpeed SAPI to 7.1 . 2018-04-10 16:48:04 -04:00
Xinchen Hui 22a8ea2a0a Update NEWS 2018-04-10 16:33:31 +08:00
Xinchen Hui 474895915e Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76143 (Memory corruption: arbitrary NUL overwrite)
2018-04-10 16:32:28 +08:00
Xinchen Hui 8cfb648761 Fixed bug #76143 (Memory corruption: arbitrary NUL overwrite) 2018-04-10 16:32:08 +08:00
Anatol Belski e01f88df7c Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Group common flags
2018-04-05 16:45:41 +02:00
Anatol Belski 09d7ffabcd Group common flags 2018-04-05 16:44:12 +02:00
Anatol Belski 7768f5e2de Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Rename var
2018-04-05 14:54:14 +02:00
Anatol Belski ed5aabe8b7 Rename var 2018-04-05 14:52:40 +02:00
George Wang 1e1695e8de Merge branch 'PHP-7.1' into PHP-7.2 2018-04-03 11:47:41 -04:00
George Wang 37e1d7c776 [BUGFIX] allow php_admin_value to override value set in php.ini without restriction, like adding an extra directory to open_basedir. 2018-04-03 11:46:24 -04:00
Anatol Belski 2115878aaa Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Sync fix for bug #72498 for 32-bit
2018-04-03 17:25:13 +02:00
Anatol Belski 821f13fd79 Sync fix for bug #72498 for 32-bit 2018-04-03 17:24:13 +02:00
Anatol Belski 062f93c93e [ci skip] Update NEWS 2018-04-03 11:29:38 +02:00
Anatol Belski 5cd94db8bb Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-04-03 11:29:08 +02:00
Anatol Belski c3fa86867b [ci skip] Update NEWS 2018-04-03 11:28:19 +02:00
Anatol Belski 22e8a3c347 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix shared ext/intl compilation
2018-04-03 10:43:17 +02:00
Anatol Belski 2bd299f731 Fix shared ext/intl compilation 2018-04-03 10:42:14 +02:00
Rasmus Lerdorf aaae3637e0 Better explanation for the opcache.max_wasted_percentage ini setting
since it was pretty confusing before
2018-03-30 13:24:17 -07:00
Christoph M. Becker 76f421dd3a Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #52070: imagedashedline() - dashed line sometimes is not visible
2018-03-30 19:29:10 +02:00
Christoph M. Becker 9c37d95627 Fix #52070: imagedashedline() - dashed line sometimes is not visible
We finally remove the inadvertent leftover from the synchronization
with GD 2.0.12.
2018-03-30 19:22:23 +02:00
Jakub Zelenka 8b642af484 Merge branch 'PHP-7.1' into PHP-7.2 2018-03-30 17:58:29 +01:00
Jakub Zelenka 2688023c7f Update NEWS with FPM fixes 2018-03-30 17:56:17 +01:00
Jakub Zelenka 0be5b9e6b0 Prevent modifying of getenv result 2018-03-30 17:20:19 +01:00
Jacob Hipps 008eb1461c 68440: ensure backwards compatibility with FPM_SOCKETS var; fix sockname size 2018-03-30 17:20:19 +01:00
Jacob Hipps 77bf9245d2 Fix bug #68440: [sapi/fpm] use multiple FPM_SOCKETS env vars to prevent hitting MAX_ARG_STRLEN with a large number of pools 2018-03-30 17:20:19 +01:00
Anatol Belski 35e3d597f5 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix clang build, ref buf #76153
2018-03-30 14:16:44 +02:00
Anatol Belski 8b104d7893 Fix clang build, ref buf #76153
Clang only allows -std=c++11 for C++ source.
2018-03-30 14:14:35 +02:00
Anatol Belski 99194d1831 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Update binary SDK version for AppVeyor
2018-03-29 17:00:47 +02:00
Anatol Belski e324f82d3c Update binary SDK version for AppVeyor 2018-03-29 16:59:42 +02:00
Anatol Belski 9510611cdd Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Adjust tests for ICU 61.1 compatibility
2018-03-29 14:13:48 +02:00
Anatol Belski 398f56dbc8 Adjust tests for ICU 61.1 compatibility 2018-03-29 14:12:19 +02:00
Ferenc Kovacs 87a9fc3b85 Merge branch 'PHP-7.1' into PHP-7.2 2018-03-28 23:21:04 +02:00
Ferenc Kovacs c8e55a6fd4 Merge branch 'PHP-7.0' into PHP-7.1 2018-03-28 23:19:30 +02:00
Ferenc Kovacs 01f42b836c Merge branch 'PHP-5.6' into PHP-7.0 2018-03-28 23:17:59 +02:00
Ferenc Kovacs cb981e39c2 [ci skip] 5.6.36 will be next 2018-03-28 23:14:30 +02:00
Anatol Belski 4e39968e4d Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76153 Intl compilation fails with icu4c 61.1
2018-03-28 18:04:09 +02:00
Anatol Belski 710284cbc4 Fixed bug #76153 Intl compilation fails with icu4c 61.1
Additionally, ICU >= 59.1 requires C++11, so add the flags. Some
refactoring is needed to comply with the latest recommended build
options, such as automatic icu namespace addition.
2018-03-28 18:01:44 +02:00
Joe Watkins fc6cbc3eaa Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed #75996: Add the right urls to the header of mt_rand.
2018-03-27 22:09:42 +02:00
TATAR Balazs Janos ac4d9fd055 Fixed #75996: Add the right urls to the header of mt_rand. 2018-03-27 22:09:08 +02:00
Joe Watkins 3e267ca91b Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #76131 some arginfo params are different from the documentation
2018-03-27 21:58:24 +02:00
Gabriel Caruso 63934ea71e Fix #76131 some arginfo params are different from the documentation 2018-03-27 21:56:46 +02:00
Anatol Belski a492fe213a Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Update libs_versions.txt
2018-03-27 19:46:25 +02:00
Anatol Belski cdf72523f3 Update libs_versions.txt 2018-03-27 19:44:17 +02:00
Anatol Belski c529e9f602 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Fix release date
2018-03-27 16:04:38 +02:00
Anatol Belski 6229e42ae5 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  [ci skip] Fix release date
2018-03-27 16:03:54 +02:00
Anatol Belski 1e4273d881 [ci skip] Fix release date 2018-03-27 16:02:19 +02:00
Anatol Belski 8b2bfaab66 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  7.0.30 next
2018-03-27 15:02:46 +02:00
Anatol Belski 04c0497ed7 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  7.0.30 next
2018-03-27 15:02:07 +02:00
Anatol Belski 48f835efbf 7.0.30 next 2018-03-27 15:00:54 +02:00
Anatol Belski 8b20e86491 [skip ci] Update NEWS 2018-03-27 14:29:03 +02:00
Anatol Belski d83a75bb00 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
  [ci skip] Update NEWS
  [ci skip] Update NEWS
2018-03-27 14:28:20 +02:00
Anatol Belski 631ed7288c [ci skip] Update NEWS 2018-03-27 14:27:44 +02:00
Anatol Belski ad148c5ac2 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  [ci skip] Update NEWS
  [ci skip] Update NEWS
2018-03-27 14:26:36 +02:00
Anatol Belski ca51458081 [ci skip] Update NEWS 2018-03-27 14:26:06 +02:00
Anatol Belski e2b7392b96 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  [ci skip] Update NEWS
2018-03-27 14:25:24 +02:00
Anatol Belski 2885f62816 [ci skip] Update NEWS 2018-03-27 14:24:43 +02:00
Anatol Belski 600b6277f8 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Do not set PR_SET_DUMPABLE by default
  Do not set PR_SET_DUMPABLE by default
2018-03-27 14:20:53 +02:00
Anatol Belski 6b39c81957 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Do not set PR_SET_DUMPABLE by default
  Do not set PR_SET_DUMPABLE by default
2018-03-27 14:20:10 +02:00
Jakub Zelenka 276d19feaa Do not set PR_SET_DUMPABLE by default 2018-03-27 14:19:36 +02:00
Anatol Belski eac822e897 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Do not set PR_SET_DUMPABLE by default
2018-03-27 14:19:22 +02:00
Jakub Zelenka d20bebfe13 Do not set PR_SET_DUMPABLE by default 2018-03-27 14:18:01 +02:00
Anatol Belski 35f832a007 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix phpize build when DEFINE() is involved
2018-03-26 13:38:55 +02:00
Anatol Belski 5b2c30d7e6 Fix phpize build when DEFINE() is involved 2018-03-26 13:33:55 +02:00
Anatol Belski 86aecd8801 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Sync version for VC++ 15.7
2018-03-25 12:59:59 +02:00
Anatol Belski 84f565ec71 Sync version for VC++ 15.7 2018-03-25 12:59:15 +02:00
Nikita Popov 3306577797 Followup fix for bug #75729
The case of overloaded substr() with 3 arguments was not handled.
2018-03-24 13:15:59 +01:00
Derick Rethans c72c4c5271 Updated to version 2018.4 (2018d) 2018-03-24 11:26:16 +00:00
Derick Rethans ab5dcc83a1 Empty merge 2018-03-24 11:26:16 +00:00
Derick Rethans 869ca9b733 Updated to version 2018.4 (2018d) 2018-03-24 11:26:15 +00:00
Michael Heimpold 25ba60b147 Fixed bug #75722: Rework valgrind detection
As described in bug report #75722, the configure script (acinclude.m4)
currently searches for the valgrind header file and enables valgrind
support if found.

When cross-compiling the searched paths are invalid for the target
platform because they belong to the host system. At the moment, there is
no way to tell the build system a dedicated path where to look for the
header file.

This leads to the issue, that when cross-compiling eg. for ARMv5 platform,
that valgrind header file is detected - e.g. because host system is amd64 -
and support is enabled - but target platform will never support valgrind
(valgrind requires e.g. at least ARMv7).

This change reworks the detection so that user could manually opt-in
valgrind support and optionally specify a directory where the build system
should look for the header file using the --with-valgrind option.
2018-03-23 22:02:17 +01:00
Tom Van Looy 7f4327bc24 Fix expat_compat.h path used in #include
Using ext/xml/expat_compat.h does not work if the extension is
compiled out-of-tree.
2018-03-23 22:01:25 +01:00
Thomas Petazzoni 2842aa2a07 main/php_ini.c: build empty php_load_zend_extension_cb() when !HAVE_LIBDL
Commit 0782a7fc63 ("Fixed bug #74866
extension_dir = "./ext" now use current directory for base") modified
the php_load_zend_extension_cb() function to use php_load_shlib(), and
pass a handle to the newly introduced zend_load_extension_handle()
function instead of passing the extension path to
zend_load_extension().

While doing so, it introduced a call to php_load_shlib() from code
that is built even when HAVE_LIBDL is not defined. However,
php_load_shlib() is not implemented when HAVE_LIBDL is not defined,
for obvious reasons.

It turns out that zend_load_extension_handle() anyway doesn't do
anything when ZEND_EXTENSIONS_SUPPORT is defined to 0, and
ZEND_EXTENSIONS_SUPPORT is not defined when HAVE_LIBDL is not defined
(Zend/zend_portability.h).

Fixes the following build failure when building on a system that
doesn't have libdl:

main/php_ini.o: In function `php_load_zend_extension_cb':
php_ini.c:(.text+0x478): undefined reference to `php_load_shlib'
php_ini.c:(.text+0x4b0): undefined reference to `php_load_shlib'
collect2: error: ld returned 1 exit status

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-03-23 21:13:45 +01:00
atvoicu 17ed2f21cf Add missing skip prefix for some SKIPIF messages 2018-03-23 18:56:36 +01:00
Anatol Belski 7b8861204e Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Update SDK version for AppVeyor
2018-03-21 13:17:44 +01:00
Anatol Belski 6c30014600 Update SDK version for AppVeyor 2018-03-21 13:15:29 +01:00
Christoph M. Becker 8f5c34cd39 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #76113: mbstring does not build with Oniguruma 6.8.1
2018-03-20 16:53:17 +01:00
Christoph M. Becker 4072b27870 Fix #76113: mbstring does not build with Oniguruma 6.8.1
As of Oniguruma 6.8.1, the regex structure has been moved from the
public `oniguruma.h` to the private `regint.h`.  Thus, it is no longer
possible to directly access the struct's members, and actually, there
is no need to, since there are respective accessor functions available
at least of 2.3.1.
2018-03-20 16:42:28 +01:00
Christoph M. Becker cd2912af5e Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #75944: Wrong cp1251 detection
2018-03-19 14:34:09 +01:00
Christoph M. Becker 47461368ca Fix #75944: Wrong cp1251 detection
`\xFF` is a valid character of CP-1251.
2018-03-19 14:24:27 +01:00
Stanislav Malyshev 13a33f7c7b Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Set tests exit status by defaul - also in other instance.
2018-03-19 01:17:36 -07:00
Stanislav Malyshev f46da1da7d Set tests exit status by defaul - also in other instance. 2018-03-19 01:17:14 -07:00
Stanislav Malyshev 077b7705af Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Set tests exit status by default.
2018-03-18 15:06:08 -07:00
Stanislav Malyshev f19c94b555 Set tests exit status by default.
Use REPORT_EXIT_STATUS=0 or REPORT_EXIT_STATUS=no to prevent it.

Based on discussion in https://www.mail-archive.com/internals@lists.php.net/msg94141.html
2018-03-18 15:04:50 -07:00
Anatol Belski 615ca3c99d Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Sync test with newer output
2018-03-16 18:56:08 +01:00
Anatol Belski dfc07f038b Sync test with newer output
Czech Republic vs. newer Czechia
2018-03-16 18:54:55 +01:00
Xinchen Hui 4758164ac5 Fixed bug #76094 (Access violation when using opcache) 2018-03-15 11:17:00 +08:00
Anatol Belski 84881c654e Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Reduce var scope
2018-03-14 23:10:24 +01:00
Anatol Belski efd0e7222b Reduce var scope 2018-03-14 22:59:54 +01:00
Anatol Belski 783778b9d3 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix stack use after scope
2018-03-14 22:23:04 +01:00
Anatol Belski 7bcd55c264 Fix stack use after scope 2018-03-14 22:21:43 +01:00
Anatol Belski 1e31ac079b Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Upgrade binary SDK version for AppVeyor
2018-03-14 12:01:01 +01:00
Anatol Belski 77c202a2e6 Upgrade binary SDK version for AppVeyor 2018-03-14 11:59:37 +01:00
Dmitry Stogov 975d144027 Fixed user-opcode support 2018-03-14 09:41:25 +03:00
Dmitry Stogov 2db6d8e415 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed use-after-free
2018-03-14 09:14:16 +03:00
Dmitry Stogov b6a41ad5ba Fixed use-after-free 2018-03-14 09:11:48 +03:00
Joe Watkins a18a11cf80 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  bump versions
2018-03-14 05:59:18 +01:00
Joe Watkins d2b47e8065 bump versions 2018-03-14 05:58:42 +01:00
Christoph M. Becker 7448b03300 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #74139: mail.add_x_header default inconsistent with docs [ci skip]
2018-03-13 23:56:31 +01:00
Christoph M. Becker 25f324fad7 Fix #74139: mail.add_x_header default inconsistent with docs [ci skip]
mail.add_x_header actually defaults to `Off`, so we should use this
default in the provided `php.ini`s.
2018-03-13 23:54:42 +01:00
Christoph M. Becker b2622ed838 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #76088: ODBC functions are not available by default on Windows
2018-03-13 14:33:20 +01:00
Christoph M. Becker cab354debd Fix #76088: ODBC functions are not available by default on Windows 2018-03-13 14:30:43 +01:00
Remi Collet d660d6d31b next is 7.2.5 2018-03-13 12:49:25 +01:00
Dmitry Stogov 5574562f8f Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Revert "More accurate symbolic constraints oferflow/unserflow handling (better fix for bug #76074)."
2018-03-13 11:03:57 +03:00
Dmitry Stogov 0643c7ab4d Revert "More accurate symbolic constraints oferflow/unserflow handling (better fix for bug #76074)."
This reverts commit 44ba557de5.
2018-03-13 11:03:45 +03:00
Dmitry Stogov 575f5002c0 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  More accurate symbolic constraints oferflow/unserflow handling (better fix for bug #76074).
2018-03-13 10:45:53 +03:00
Dmitry Stogov 44ba557de5 More accurate symbolic constraints oferflow/unserflow handling (better fix for bug #76074). 2018-03-13 10:44:53 +03:00
Xinchen Hui 98fe858275 Forgot NEWs 2018-03-13 13:01:33 +08:00
Xinchen Hui 8e576e5abc Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Forgot NEWS
2018-03-13 13:00:59 +08:00
Xinchen Hui 998a2ddc37 Forgot NEWS 2018-03-13 13:00:47 +08:00
Xinchen Hui e547c9f139 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76085 (Segmentation fault in buildFromIterator when directory name contains a \n)
2018-03-13 12:52:07 +08:00
Xinchen Hui 4ee9098514 Fixed bug #76085 (Segmentation fault in buildFromIterator when directory name contains a \n) 2018-03-13 12:51:26 +08:00
Anatol Belski c469213e7b Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix heap use after free
2018-03-12 21:02:40 +01:00
Anatol Belski 4cd64aad8a Fix heap use after free
The value may only be used until PGresult was destroyed, thus it needs
to be copied.
2018-03-12 20:57:21 +01:00
Anatol Belski 16570b8c79 Use literal as format 2018-03-12 16:00:24 +01:00
Anatol Belski 8a985403f6 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Use string literal as format
2018-03-12 15:18:11 +01:00
Anatol Belski eaa5b1f911 Use string literal as format 2018-03-12 15:17:08 +01:00
Anatol Belski fc09d7e76f Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Provide core includes for the resource compiler by default
2018-03-12 14:16:08 +01:00
Anatol Belski 4dd1be2079 Provide core includes for the resource compiler by default 2018-03-12 14:14:34 +01:00
Dmitry Stogov e6fb787c66 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Replaced usafe reference from SHM to process memory with SHM to SHM reference
2018-03-12 11:18:33 +03:00
Dmitry Stogov f31c4d5398 Replaced usafe reference from SHM to process memory with SHM to SHM reference 2018-03-12 11:18:12 +03:00
Christoph M. Becker 2b02e6dff3 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #62545: wrong unicode mapping in some charsets
2018-03-11 17:54:45 +01:00
Christoph M. Becker 01ea314e8c Fix #62545: wrong unicode mapping in some charsets
Undefined characters are best mapped to Unicode REPLACEMENT characters.
2018-03-11 17:38:28 +01:00
Thomas Petazzoni 8489ecefd3 ext/sockets: make AI_IDN usage optional
AI_IDN is not supported by all C libraries (uClibc, musl), so make it
optional, like AI_ALL.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-03-11 16:35:17 +01:00
Anatol Belski d34ab3a53c [ci skip] Update NEWS 2018-03-10 20:08:43 +01:00
Anatol Belski 53f227bb2a Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-03-10 20:08:03 +01:00
Anatol Belski 76fc73cbfc [ci skip] Update NEWS 2018-03-10 20:07:23 +01:00
Bob Weinand 9d908c70d5 Fixup mess in NEWS file (mixed 7.2.3 and 7.2.4 NEWS) 2018-03-10 15:29:07 +01:00
Bob Weinand cfd0979be5 Merge branch 'PHP-7.1' into PHP-7.2 2018-03-10 15:21:16 +01:00
Bob Weinand 9c6df8a238 Fix bug #76074 (opcache corrupts variable in for-loop) 2018-03-10 15:20:45 +01:00
Anatol Belski cf0012dad0 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76068 parse_ini_string fails to parse "[foo]\nbar=1|>baz" with segfault
2018-03-10 11:20:11 +01:00
Anatol Belski 8417a23973 Fixed bug #76068 parse_ini_string fails to parse "[foo]\nbar=1|>baz" with segfault 2018-03-10 11:18:21 +01:00
Anatol Belski d4cb4168ba [ci skip] Update link 2018-03-10 09:40:50 +01:00
Christoph M. Becker d709922979 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #73957: signed integer conversion in imagescale()
2018-03-10 00:25:11 +01:00
Christoph M. Becker f1b358c9a9 Fix #73957: signed integer conversion in imagescale()
We must not pass values to `gdImageScale()` which cannot be represented
by an `unsigned int`.  Instead we return FALSE, according to what we
already did for negative integers.
2018-03-10 00:17:09 +01:00
Anatol Belski d1ed6b1b15 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Disable PGO for phpdbg
2018-03-08 11:49:25 +01:00
Anatol Belski 34b9f9dedf Disable PGO for phpdbg
For executable files, the linker seems to have issues dealing with the
empty profiling database. As PGO is unlikely to bring any benefit in
this case, the easiest is to disable it.
2018-03-08 11:48:37 +01:00
Anatol Belski 2d660dd630 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Exclude /Qspectre for clang analyzer
2018-03-07 15:23:03 +01:00
Anatol Belski 00bfc6eb49 Exclude /Qspectre for clang analyzer 2018-03-07 12:34:16 +01:00
Anatol Belski 22857f1d89 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Guard platform dependent code
2018-03-07 12:29:22 +01:00
Anatol Belski 281e2f8207 Guard platform dependent code 2018-03-07 12:28:29 +01:00
Anatol Belski 7780bfc7b3 [ci skip] Update NEWS 2018-03-06 22:07:58 +01:00
Anatol Belski 000e35db81 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-03-06 22:07:31 +01:00
Anatol Belski 8a57fcdfbd [ci skip] Update NEWS 2018-03-06 22:06:52 +01:00
Dmitry Stogov 020a02ef9d Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Replaced usafe reference from SHM to process memory with SHM to SHM reference.
2018-03-06 02:47:01 +03:00
Dmitry Stogov 50949c9332 Replaced usafe reference from SHM to process memory with SHM to SHM reference. 2018-03-06 02:43:26 +03:00
Dmitry Stogov b48d2f6d10 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Don't keep HashTable.pDestructor in SHM and always set it into ZVAL_PTR_DTOR in zval_array_dup(). Keeping pointer to a function in SHM is not safe because of ASLR.
2018-03-06 01:00:14 +03:00
Dmitry Stogov b711a96acb Don't keep HashTable.pDestructor in SHM and always set it into ZVAL_PTR_DTOR in zval_array_dup().
Keeping pointer to a function in SHM is not safe because of ASLR.
2018-03-06 00:56:16 +03:00
Dmitry Stogov 033ce8f28c Merge branch 'PHP-7.1' of git.php.net:php-src into PHP-7.1
* 'PHP-7.1' of git.php.net:php-src:
  Fixed bug #76044 'date: illegal option -- -' in ./configure on FreeBSD
2018-03-06 00:47:40 +03:00
Dmitry Stogov b7ebf90221 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed invalid destructor
2018-03-06 00:46:40 +03:00
Dmitry Stogov a83581e223 Fixed invalid destructor 2018-03-06 00:46:19 +03:00
Anatol Belski b53f326f67 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76044 'date: illegal option -- -' in ./configure on FreeBSD
2018-03-05 22:38:03 +01:00
Anatol Belski 60ac255897 Fixed bug #76044 'date: illegal option -- -' in ./configure on FreeBSD 2018-03-05 22:35:58 +01:00
Dmitry Stogov 53baf6fa1d Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed invalid destructor
2018-03-05 23:33:53 +03:00
Dmitry Stogov 87553b0730 Fixed invalid destructor 2018-03-05 23:33:08 +03:00
Nikita Popov 634a1ff033 Merge branch 'PHP-7.1' into PHP-7.2 2018-03-05 15:32:39 +01:00
Nikita Popov fd5bd37ab1 Revert "Fixed bug #75961 (Strange references behavior)"
This reverts commit 94e9d0a2ae.

This code needs to be mindful about modifications to the array
happening during callback execution. It was written in a way that
only accessed the reference, which is guaranteed not to move. The
changed implementation instead accesses the array slot, leading to
use-after-free.

Run ext/standard/tests/array/bug61967.phpt under valgrind to see
the issue.
2018-03-05 15:32:21 +01:00
Anatol Belski 54212dfbf9 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Include username into the file cache path
2018-03-05 15:21:31 +01:00
Anatol Belski 27a603e811 Include username into the file cache path 2018-03-05 15:16:55 +01:00
Dmitry Stogov a8fbb15311 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed "opcache.file_cache_fallback" mode.
2018-03-05 16:15:38 +03:00
Dmitry Stogov 350082ed71 Fixed "opcache.file_cache_fallback" mode.
It's not safe to change value of ZCG(accel_directives).file_cache_only, becuse it might be altered by INI subsystem.
Use global variable instead.
2018-03-05 16:01:43 +03:00
Christoph M. Becker d83467d70b Fix #76041: null pointer access crashed php
We must not draw anti-aliased lines on palette images, because that is
not supported by `gdImageSetAAPixelColor()` and it wouldn't make much
sense to support it, due to the limitation to at most 256 colors.
2018-03-02 17:18:45 +01:00
Anatol Belski 3c58b2c31a Remove TSRMLS_* 2018-03-01 12:12:11 +01:00
Joe Watkins 23ebda3a71 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  fix news date
2018-02-28 12:23:08 +01:00
Joe Watkins a827aefe47 fix news date 2018-02-28 12:10:58 +01:00
Xinchen Hui 07fb188492 Update NEWS 2018-02-28 18:07:05 +08:00
Xinchen Hui 858ebd9285 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #76025 (Segfault while throwing exception in error_handler).
2018-02-28 18:06:49 +08:00
Xinchen Hui d5c171311d Fixed bug #76025 (Segfault while throwing exception in error_handler). 2018-02-28 18:06:37 +08:00
George Wang 66e3912f3a Merge branch 'PHP-7.1' into PHP-7.2 2018-02-27 23:33:36 -05:00
George Wang d4387fca0a revert last change, for PHP7 no need to do strlen() + 1 for hash look up. 2018-02-27 23:31:43 -05:00
George Wang 3af5722e11 Merge branch 'PHP-7.1' into PHP-7.2 2018-02-27 23:21:04 -05:00
George Wang 2b033607f3 [BUGFIX] calling php_ini_activate_per_host_config() with correct name length. 2018-02-27 23:18:51 -05:00
Bob Weinand 15d611e451 Merge branch 'PHP-7.1' into PHP-7.2 2018-02-28 02:35:44 +01:00
Bob Weinand 3f32bd9f43 Fix pcntl build on mac
Apparently on mac WIF*(x) macros resolve to (*(int*)&x) (_W_INT macro in sys/wait.h), forcing the value to be a lvalue
2018-02-28 02:13:28 +01:00
Ferenc Kovacs fe181463a7 Merge branch 'PHP-7.1' into PHP-7.2 2018-02-28 00:05:10 +01:00
Ferenc Kovacs b53e547d85 Merge branch 'PHP-7.0' into PHP-7.1 2018-02-28 00:02:48 +01:00
Ferenc Kovacs c28a6253e5 Merge branch 'PHP-5.6' into PHP-7.0 2018-02-28 00:00:12 +01:00
Ferenc Kovacs 3db7427b71 5.6.35 is next 2018-02-27 23:57:06 +01:00
George Wang 9607d15d7d Merge branch 'PHP-7.1' into PHP-7.2 2018-02-27 13:56:19 -05:00
George Wang 97ff815cbb release LiteSpeed SAPI 7.0.
add CRIU support.
add support for [PATH=] and [HOST=] sections in php.ini
2018-02-27 13:54:28 -05:00
Anatol Belski 1ec4d3698b Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  7.0.29 next
2018-02-27 11:51:10 +01:00
Anatol Belski ea4ba9d008 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  7.0.29 next
2018-02-27 11:50:22 +01:00
Anatol Belski c61b56ed00 7.0.29 next 2018-02-27 11:48:49 +01:00
Anatol Belski 74bdb8fb15 [ci skip] Update NEWS 2018-02-27 11:39:19 +01:00
Anatol Belski ba8818325e Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
  [ci skip] Update NEWS
  [ci skip] Update NEWS
2018-02-27 11:38:23 +01:00
Anatol Belski f6356b435a [ci skip] Update NEWS 2018-02-27 11:37:24 +01:00
Anatol Belski 9e1113dee1 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  [ci skip] Update NEWS
  [ci skip] Update NEWS
2018-02-27 11:34:13 +01:00
Anatol Belski fed294d2a8 [ci skip] Update NEWS 2018-02-27 11:33:40 +01:00
Anatol Belski 1e0499b095 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  [ci skip] Update NEWS
2018-02-27 11:32:26 +01:00
Anatol Belski 4698a412bf [ci skip] Update NEWS 2018-02-27 11:31:37 +01:00
Stanislav Malyshev ab9f9b5d3b Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix bug #75981: prevent reading beyond buffer start
2018-02-26 22:26:55 -08:00
Stanislav Malyshev a6f7760d57 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix bug #75981: prevent reading beyond buffer start
2018-02-26 22:26:50 -08:00
Stanislav Malyshev dde7a05978 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fix bug #75981: prevent reading beyond buffer start
2018-02-26 22:26:26 -08:00
Stanislav Malyshev 523f230c83 Fix bug #75981: prevent reading beyond buffer start 2018-02-26 22:25:51 -08:00
Christoph M. Becker feef202718 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-02-24 23:39:28 +01:00
Christoph M. Becker 6e300bdeae [ci skip] Update NEWS 2018-02-24 23:37:43 +01:00
Christoph M. Becker 8c396e0e88 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix imagesetinterpolation arginfo
2018-02-24 11:32:03 +01:00
Gabriel Caruso a358211a75 Fix imagesetinterpolation arginfo
imagesetinterpolation only requires one parameter.
2018-02-24 11:30:24 +01:00
Stanislav Malyshev c904d380a2 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Set FPM maintainership
2018-02-23 17:57:57 -08:00
Stanislav Malyshev ae1f18b69c Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  [ci skip] Set FPM maintainership
2018-02-23 17:57:50 -08:00
Stanislav Malyshev 09a19e778b Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  [ci skip] Set FPM maintainership
2018-02-23 17:57:26 -08:00
Stanislav Malyshev 1f4b057b63 [ci skip] Set FPM maintainership
As per http://news.php.net/php.internals/101897, Jakub is officially
annointed as new FPM maintainer.
2018-02-23 16:43:10 -08:00
Christoph M. Becker 32df2b6617 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #75873: pcntl_wexitstatus returns incorrect on Big_Endian platform (s390x)
2018-02-23 23:52:07 +01:00
Sam Ding 78c1ef2adb Fix #75873: pcntl_wexitstatus returns incorrect on Big_Endian platform (s390x)
Cf. https://github.com/php/php-src/pull/3141.
2018-02-23 23:50:36 +01:00
Christoph M. Becker c6cf3d4ada Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix some arginfos
2018-02-23 11:29:21 +01:00
Gabriel Caruso 0b8cfa6c78 Fix some arginfos
* all arguments for ftp_pasv are required
* $varname for getenv function isn't required anymore
* fsockopen and pfsockopen only require $hostname
* strtok can work with only one parameter
* strpbrk needs two parameters to work
* required parameters and add some parameters in openssl_* functions
2018-02-23 11:27:14 +01:00
Stanislav Malyshev 36239fee36 Fix bug #75981: prevent reading beyond buffer start 2018-02-20 15:44:00 -08:00
Johannes Schlüter 2577cdbea2 Merge branch 'PHP-7.1' into PHP-7.2 2018-02-20 23:32:25 +01:00
Johannes Schlüter 42952a756e Merge branch 'PHP-7.0' into PHP-7.1 2018-02-20 23:32:05 +01:00
Johannes Schlüter 73cd5fca2c Fix NEWS 2018-02-20 23:31:30 +01:00
Johannes Schlüter 74ed42c169 Fix a memleak with mysqlnd and SSL 2018-02-20 23:28:23 +01:00
Johannes Schlüter 1c98955d0f Merge branch 'PHP-7.1' into PHP-7.2 2018-02-20 23:20:28 +01:00
Johannes Schlüter e3cf72b829 Merge branch 'PHP-7.0' into PHP-7.1 2018-02-20 23:20:02 +01:00
Johannes Schlüter 8f3c29aee1 Fix negotiaton of MySQL auth plugin 2018-02-20 23:13:03 +01:00
Christoph M. Becker 6237bcd39e Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Sort recent NEWS entries alphabetically
2018-02-20 16:33:55 +01:00
Christoph M. Becker 656381745a [ci skip] Sort recent NEWS entries alphabetically 2018-02-20 16:31:56 +01:00
Christoph M. Becker e80e38ab7c Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix openssl_* arginfos
2018-02-20 16:25:22 +01:00
Gabriel Caruso 276b57316c Fix openssl_* arginfos
openssl_pkcs12_export and openssl_x509_parse had wrong arginfos
2018-02-20 16:23:42 +01:00
Anatol Belski 884697a290 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Update binary tools SDK branch for AppVeyor
2018-02-20 15:52:42 +01:00
Anatol Belski c28b03a8e7 Update binary tools SDK branch for AppVeyor 2018-02-20 15:40:10 +01:00
Anatol Belski ea0355632d Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  dos2unix
2018-02-20 08:00:08 +01:00
Anatol Belski ef04bc4a51 dos2unix 2018-02-20 07:59:34 +01:00
Nikita Popov 1b6a9ea584 Merge branch 'PHP-7.1' into PHP-7.2 2018-02-19 21:46:11 +01:00
Nikita Popov 7b3a2d16aa Fix incorrect printf modifiers 2018-02-19 21:44:36 +01:00
Anatol Belski fa7c32040c Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Use more jobs with cppcheck
2018-02-19 11:27:42 +01:00
Anatol Belski 08b4f3c745 Use more jobs with cppcheck 2018-02-19 11:27:03 +01:00
Nikita Popov 500632ac13 Fix pfsockopen() func info 2018-02-18 17:42:12 +01:00
Nikita Popov c0abab5fca Fix ZEND_SL range inference
This is a bit tricker than right shifts because shifting in the
sign bit flips the sign. The computed bounds are not tight.
2018-02-18 17:42:12 +01:00
Nikita Popov 202989edf8 Fix ZEND_SR range inference
Handle out-of-range RHS correctly.
2018-02-18 17:42:12 +01:00
Nikita Popov 40ff001381 Fix constant() func info
Since PHP 5.6 this can also be an array.
2018-02-18 17:42:11 +01:00
Nikita Popov ae837db8cf Handle overloaded GMP operators in type inference 2018-02-18 15:33:30 +01:00
Nikita Popov 39974dd65d Disable negative range inference
The negative range inference implementation does not work correctly,
and it's not clear right now how it can be fixed. As such, disable
it entirely for now.
2018-02-18 15:33:28 +01:00
Nikita Popov 846e8a3ec9 Fix COUNT range inference
count() on objects may return a negative number :(
2018-02-17 23:18:30 +01:00
Nikita Popov fa7c23ba27 Fix hash_init() and hash_copy() func info
These functions were switched to use objects instead of resources.
2018-02-17 23:18:29 +01:00
Nikita Popov acb9426a6b Fix curl_multi_close() func info
Returns false on failure
2018-02-17 23:18:29 +01:00
Nikita Popov 8bdf9905da Fix get_object_vars() func info
Numeric keys will be converted to integer nowadays.
2018-02-17 23:18:29 +01:00
Nikita Popov 1a50a50bcf Add RC flags in init_func_return_info 2018-02-17 23:18:29 +01:00
Nikita Popov fd5644cd0b Fix array_values() and array_keys() func info
Can return RCN for empty/packed arrays
2018-02-17 23:18:28 +01:00
Anatol Belski 0255c21319 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Remove duplicated assignment
2018-02-17 13:12:29 +01:00
Anatol Belski a468752e53 Remove duplicated assignment 2018-02-17 13:10:59 +01:00
Xinchen Hui 114e5d0206 Update NEWS 2018-02-17 16:35:42 +08:00
Xinchen Hui 26dda8999c Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #75961 (Strange references behavior)
2018-02-17 16:33:39 +08:00
Xinchen Hui 94e9d0a2ae Fixed bug #75961 (Strange references behavior) 2018-02-17 16:33:15 +08:00
Nikita Popov 0674d677bc Merge branch 'PHP-7.1' into PHP-7.2 2018-02-16 20:30:49 +01:00
Nikita Popov 372bf8a923 Fixed bug #75969
Move NOP stripping out of zend_optimize_block: NOP stripping may
move instructions, which may invalidate a Tsource shared across
an extended basic block.
2018-02-16 20:30:03 +01:00
Anatol Belski 4800a95e72 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Wrap var depending on conditional compilation
2018-02-16 13:41:13 +01:00
Anatol Belski da0ed5cdb1 Wrap var depending on conditional compilation 2018-02-16 13:40:44 +01:00
Joe Watkins 34ab10ef1b Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed print_const_table function and zval types in ____printzv_contents
2018-02-15 08:57:43 +01:00
Mitch Hagstrand da5db1c9b2 Fixed print_const_table function and zval types in ____printzv_contents
1. Fixed print_const_table to work in ZE3
2. Removed ____print_const_table to use more generic ____print_ht
3. Fixed up zval types in ____printzv_contents
2018-02-15 08:57:32 +01:00
Joe Watkins 0b5466c0a6 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  bump versions
2018-02-15 08:56:08 +01:00
Gabriel Caruso 8a3f45f90b Remove getmxrr alias dns_get_mx test
The test is currently failing, and the same functionality is
already tested (in a better way) in the getmxrr() test.
2018-02-14 19:00:07 +01:00
Remi Collet a93dba4324 add pkg-config example in extension skeleton 2018-02-14 13:28:21 +01:00
Remi Collet 17164bcf8d factorization of duplicated code 2018-02-14 13:15:09 +01:00
Remi Collet 528bc00d84 Fix timezone var_dump from 51f2a5803f 2018-02-14 08:59:24 +01:00
Sara Golemon 2cc8cf2994 Now working on 7.2.4-dev 2018-02-13 14:37:00 -05:00
Sara Golemon 5dd2a4185c Now working on 7.2.4-dev 2018-02-13 14:32:37 -05:00
Joe 1f0ea7fa4d bump versions 2018-02-13 20:24:34 +01:00
Anatol Belski 2235da59af Extend skipif check 2018-02-13 14:04:51 +01:00
Joe 8c1147b089 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #68406 calling var_dump on a DateTimeZone object modifies it
2018-02-12 09:19:11 +01:00
jhdxr 070211b3e3 Fixed bug #68406 calling var_dump on a DateTimeZone object modifies it 2018-02-12 09:17:21 +01:00
Christoph M. Becker 7554fd9101 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #75857: Timezone gets truncated when formatted
2018-02-11 12:49:41 +01:00
Gabriel Caruso f706937120 Fix #75857: Timezone gets truncated when formatted
Use sizeof buffer instead of hard-coded lenghts
2018-02-11 03:14:41 +01:00
Nikita Popov ee3f3a9d75 Merge branch 'PHP-7.1' into PHP-7.2 2018-02-10 19:30:57 +01:00
Pedro Lacerda fddd7e38bd Fixed bug #75928 2018-02-10 19:29:47 +01:00
Nikita Popov e87283fa3f Merge branch 'PHP-7.1' into PHP-7.2 2018-02-10 19:19:09 +01:00
Mitch Hagstrand 01f7998db0 Enhancements and fixes for print_pi in gdbinit
1) Outputs the default value and the offset of a property
2) Fixed output of property flags
2018-02-10 19:18:39 +01:00
Nikita Popov 7aac61ce76 Fixed bug #75938
New modulus range inference implementation has been verified using
https://gist.github.com/nikic/67947ff92cf0e1f7e931f2f0d4cf817f.

The computed bounds are not tight, but it seems to be very hard to
compute tight bounds on modulus operations.
2018-02-09 15:10:23 +01:00
Joe f9a16d492e Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixes bug #75871 Use pkg-config for libxml2 if available
2018-02-08 10:51:07 +01:00
Pedro Magalhães 5673c641dc Fixes bug #75871 Use pkg-config for libxml2 if available 2018-02-08 10:50:22 +01:00
Joe d803dcba3b Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #49876 lib path on 64bit distros
2018-02-08 10:42:42 +01:00
David Zuelke 8000334538 Fixed bug #49876 lib path on 64bit distros 2018-02-08 10:41:46 +01:00
Joe 44a1271ea0 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #65414
2018-02-08 10:33:03 +01:00
Bishop Bettini d806d0315f Fixed bug #65414 2018-02-08 10:32:08 +01:00
Bishop Bettini 4765ba7dc3 Fixed bug #65414 2018-02-08 10:29:56 +01:00
Joe ab770401e1 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #74519 strange behavior of AppendIterator
2018-02-08 10:18:31 +01:00
CHU Zhaowei 01eafceea1 Fixed bug #74519 strange behavior of AppendIterator 2018-02-08 10:16:24 +01:00
CHU Zhaowei 495508eceb fix #74519 strange behavior of AppendIterator 2018-02-08 10:15:09 +01:00
Nikita Popov 1391a0fa0b Fixed bug #75893
It is not sufficient to just add the additional types for aliased
variables at the end of type inference, because types of derived
variables may depend on them. Make sure the additional types are
always added whenever the type of an aliased variable is updated.
2018-02-05 21:41:44 +01:00
Nikita Popov d9e71169e6 Fixed bug #75729
Don't try to evaluate substr() and strpos() at compile-time if
mbstring function overloading is enabled. I'm reusing the
COMPILE_NO_BUILTIN_STRLEN for the detection of mbstring function
overloading here, even if it's technically only about strlen()...
2018-02-05 21:08:18 +01:00
Anatol Belski 51a0e051fc Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Finer conditions, so /Qspectre is already usable with latest vc15
2018-02-05 10:40:45 +01:00
Anatol Belski 1368aea352 Finer conditions, so /Qspectre is already usable with latest vc15 2018-02-05 10:38:06 +01:00
Michael Wallner 3ef3f74a65 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  fix bug #75916 DNS_CAA record results contain garbage
2018-02-05 09:08:12 +01:00
Michael Wallner 42f2ae0572 fix bug #75916 DNS_CAA record results contain garbage
It is assumed that DNS_CAA record values are zero terminated,
while its length is defined as (RDATA_LENGTH - tag_length - 2).
2018-02-05 09:04:07 +01:00
Nikita Popov 3e15465f31 Merge branch 'PHP-7.1' into PHP-7.2 2018-02-02 22:31:40 +01:00
Chris Lamb a694433bff Fix SOURCE_DATE_EPOCH to not vary on timezones 2018-02-02 22:31:17 +01:00
Anatol Belski b7575758a9 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Switch to the new PHP SDK version on AppVeyor
2018-02-02 14:09:20 +01:00
Anatol Belski b1ee215c69 Switch to the new PHP SDK version on AppVeyor 2018-02-02 14:06:53 +01:00
Anatol Belski 138ea7c3fe Ensure there are no line breaks in the error msg 2018-02-01 15:30:01 +01:00
Anatol Belski bc584c408c [ci skip] Update NEWS 2018-02-01 15:26:12 +01:00
Anatol Belski 88aeb104a2 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
  Fix race conditions with Apache vhost vs. per dir config
2018-02-01 15:25:55 +01:00
Anatol Belski 2ae46f8eb6 [ci skip] Update NEWS 2018-02-01 15:25:15 +01:00
Anatol Belski bced074124 Fix race conditions with Apache vhost vs. per dir config
If the same php_value/php_flag is present in httpd.conf and .htaccess,
the key is potentially shared between threads. Unfortunately we can't
intern these keys using the current mechanism, because the MPM is setup
before the SAPI module setup is even started. A more elegant way were
to implement a kind of string pool for the thread safe Apache SAPI
config directives with the mechanism similar to what is done for the
SAPI setup now, but doing a separate management.

(cherry picked from commit 73eb5a78b9)
2018-02-01 15:24:31 +01:00
Anatol Belski 73eb5a78b9 Fix race conditions with Apache vhost vs. per dir config
If the same php_value/php_flag is present in httpd.conf and .htaccess,
the key is potentially shared between threads. Unfortunately we can't
intern these keys using the current mechanism, because the MPM is setup
before the SAPI module setup is even started. A more elegant way were
to implement a kind of string pool for the thread safe Apache SAPI
config directives with the mechanism similar to what is done for the
SAPI setup now, but doing a separate management.
2018-01-31 20:15:30 +01:00
Derick Rethans 5feb53964f Sync with timelib 2017.06 2018-01-31 11:55:35 +00:00
Jakub Zelenka 3348d40a7b Use correct certs for SNI server tests with separate key and cert 2018-01-30 20:08:19 +00:00
Jakub Zelenka aef59537e6 Merge branch 'PHP-7.1' into PHP-7.2 2018-01-30 20:02:34 +00:00
Jakub Zelenka fe2ac52d50 Use correct certs for SNI server tests 2018-01-30 19:58:40 +00:00
Thomas Punt 0f393a6102 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Use the correct freeing function
2018-01-29 11:13:22 +00:00
Thomas Punt fb128f6512 Use the correct freeing function 2018-01-29 11:13:10 +00:00
Bishop Bettini fa586cee3e Fixed bug #54289
If a directory is passed to Phar::extractTo(), loop over all
entries and extract all files with the given prefix.
2018-01-28 21:51:25 +01:00
Anatol Belski a99df321f1 [ci skip] Update NEWS. 2018-01-27 17:24:29 +01:00
Sam Ding a8c6b36d62 fixed Big_endian issue on s390x for stream test cases 2018-01-27 16:39:03 +01:00
Christoph M. Becker 96595a232a Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Revert "Fix #75878: RecursiveTreeIterator::setPostfix has wrong signature"
2018-01-27 13:13:06 +01:00
Christoph M. Becker a882f95e39 Revert "Fix #75878: RecursiveTreeIterator::setPostfix has wrong signature"
This reverts commit 4bd7658e1b.

To avoid the BC break we apply the fix to master only.
2018-01-27 13:11:30 +01:00
Christoph M. Becker d7a02844f9 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #75878: RecursiveTreeIterator::setPostfix has wrong signature
2018-01-27 12:41:15 +01:00
Christoph M. Becker 4bd7658e1b Fix #75878: RecursiveTreeIterator::setPostfix has wrong signature 2018-01-27 12:33:36 +01:00
Nikita Popov fd255b8878 Merge branch 'PHP-7.1' into PHP-7.2 2018-01-26 22:28:48 +01:00
Philip Prindeville aad76a9b79 Be consistent in clearing out in php_iconv_string() 2018-01-26 22:28:27 +01:00
Dmitry Stogov aad12cb49c Restore initial values on graceful server restart. 2018-01-26 15:22:36 +03:00
Michael Orlitzky 3fe9e10a1b ext/session: catch incompatible configure flags earlier.
The session extension has a --with-mm flag that tells it to build
the mm backend ("mm" is the name of the library). However, that
backend is not thread-safe, and mod_mm.c will refuse to compile if
the --enable-maintainer-zts flag was also passed to the configure
script.

Rather than crash halfway through the build, this commit adds a check
to the session extension's config.m4 file. If both --with-mm and
--enable-maintainer-zts are "on," then the configure script will
die and explain that they can't be used together.

PHP-bug: 14269
2018-01-24 21:22:15 +01:00
Derick Rethans 6dbe046154 Updated to version 2018.3 (2018c) 2018-01-24 13:57:07 +00:00
Derick Rethans 3bdcb6cf3e Empty merge 2018-01-24 13:57:07 +00:00
Derick Rethans f80e59a566 Updated to version 2018.3 (2018c) 2018-01-24 13:57:06 +00:00
Sara Golemon 0c22cda951 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix alignment of PG struct cause by ignore_user_abort big endian fix
2018-01-23 11:11:37 -05:00
Sara Golemon 3ffdf6c088 Fix alignment of PG struct cause by ignore_user_abort big endian fix 2018-01-23 11:06:34 -05:00
Sara Golemon 0067420049 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Use Z_EXPECTED_LONG to initialize FAST_ZPP parsing loop
2018-01-23 09:24:47 -05:00
Sara Golemon e954bafc28 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Use Z_EXPECTED_LONG to initialize FAST_ZPP parsing loop
2018-01-23 09:24:40 -05:00
Sara Golemon e88e83d3e5 Use Z_EXPECTED_LONG to initialize FAST_ZPP parsing loop 2018-01-23 09:24:10 -05:00
Sara Golemon 871066523e Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  BigEndian fix for ignore_user_abort. Use zend_bool to match OnUpdateBool
2018-01-23 08:58:53 -05:00
Sara Golemon d46d53a7bc BigEndian fix for ignore_user_abort. Use zend_bool to match OnUpdateBool 2018-01-23 08:58:19 -05:00
Anatol Belski 4626c28e9c [ci skip] Update NEWS 2018-01-22 19:15:30 +01:00
Anatol Belski b8f14008eb Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  [ci skip] Update NEWS
2018-01-22 19:15:02 +01:00
Anatol Belski 594a4da3e5 [ci skip] Update NEWS 2018-01-22 19:14:24 +01:00
Anatol Belski e403e122cd Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #73725 Unable to retrieve value of varchar(max) type
2018-01-22 17:03:48 +01:00
Anatol Belski 2384ade53c Fixed bug #73725 Unable to retrieve value of varchar(max) type 2018-01-22 17:02:54 +01:00
Xinchen Hui 2dc1cd1154 Updated NEWS 2018-01-18 10:53:58 +08:00
Xinchen Hui 6184301212 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed #75838 (Memory leak in pg_escape_bytea())
2018-01-18 10:53:39 +08:00
Xinchen Hui fb205020ce Fixed #75838 (Memory leak in pg_escape_bytea()) 2018-01-18 10:53:23 +08:00
Anatol Belski f0aa379dc1 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Add switches for Spectre variant 1 mitigation
2018-01-17 14:47:39 +01:00
Anatol Belski 043d53c789 Add switches for Spectre variant 1 mitigation 2018-01-17 14:33:08 +01:00
Anatol Belski 13dd12e85f Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  7.0.15 next
2018-01-16 19:49:23 +01:00
Anatol Belski ea56fc840e 7.0.15 next 2018-01-16 19:47:35 +01:00
Xinchen Hui 9206afc652 Fixed NEWS 2018-01-16 17:31:44 +08:00
Remi Collet 5a54107879 next is 7.2.3 2018-01-16 09:54:57 +01:00
10024 changed files with 310254 additions and 305656 deletions

No files matched your search

+2 -10
View File
@@ -1,4 +1,3 @@
version: "{branch}.build.{build}"
image: Visual Studio 2017
@@ -8,22 +7,16 @@ branches:
- PHP-5.6
- PHP-7.0
skip_commits:
files:
- NEWS
- UPGRADING*
- README.*
clone_depth: 64
cache:
- c:\build-cache
environment:
PHP_BUILD_CACHE_BASE_DIR: c:\build-cache
PHP_BUILD_CACHE_BASE_DIR: c:\build-cache
PHP_BUILD_OBJ_DIR: c:\obj
PHP_BUILD_CACHE_SDK_DIR: c:\build-cache\sdk
PHP_BUILD_SDK_BRANCH: php-sdk-2.0.13
PHP_BUILD_SDK_BRANCH: php-sdk-2.1.9beta1
PHP_BUILD_CRT: vc15
# ext and env setup for tests
#MYSQL_TEST_PASSWD: Password12!
@@ -54,4 +47,3 @@ build_script:
test_script:
- appveyor\test.bat
+62 -51
View File
@@ -5,7 +5,7 @@ end
document set_ts
set the ts resource, it is impossible for gdb to
call ts_resource_ex while no process is running,
but we could get the resource from the argument
but we could get the resource from the argument
of frame info.
end
@@ -16,9 +16,11 @@ define ____executor_globals
end
set $eg = ((zend_executor_globals*) (*((void ***) $tsrm_ls))[executor_globals_id-1])
set $cg = ((zend_compiler_globals*) (*((void ***) $tsrm_ls))[compiler_globals_id-1])
set $eg_ptr = $eg
else
set $eg = executor_globals
set $cg = compiler_globals
set $eg_ptr = (zend_executor_globals*) &executor_globals
end
end
@@ -151,7 +153,7 @@ end
define printzv
set $ind = 1
____printzv $arg0 0
____printzv $arg0 0
end
document printzv
@@ -171,7 +173,7 @@ define ____printzv_contents
printf "UNDEF"
end
if $type == 1
printf "NULL"
printf "NULL"
end
if $type == 2
printf "bool: false"
@@ -179,16 +181,16 @@ define ____printzv_contents
if $type == 3
printf "bool: true"
end
if $type == 4
if $type == 4
printf "long: %ld", $zvalue->value.lval
end
if $type == 5
printf "double: %f", $zvalue->value.dval
end
if $type == 6
printf "string: %s", $zvalue->value.str->val
end
if $type == 7
end
if $type == 5
printf "double: %f", $zvalue->value.dval
end
if $type == 6
printf "string: %s", $zvalue->value.str->val
end
if $type == 7
printf "array: "
if ! $arg1
set $ind = $ind + 1
@@ -245,25 +247,31 @@ define ____printzv_contents
printf "const: %s", $zvalue->value.str->val
end
if $type == 12
printf "const_ast"
printf "CONSTANT_AST"
end
if $type == 13
printf "_IS_BOOL"
printf "_BOOL"
end
if $type == 14
printf "IS_CALLABLE"
printf "CALLABLE"
end
if $type == 15
printf "indirect: "
____printzv $zvalue->value.zv $arg1
end
if $type == 16
printf "string_offset"
end
if $type == 17
printf "pointer: %p", $zvalue->value.ptr
end
if $type > 17
if $type == 18
printf "ITERABLE"
end
if $type == 19
printf "VOID"
end
if $type == 20
printf "_ERROR"
end
if $type == 16 || $type > 20
printf "unknown type %d", $type
end
printf "\n"
@@ -279,42 +287,32 @@ define ____printzv
if $arg1
____printzv_contents $zcontents $arg1
else
____printzv_contents $zcontents 0
____printzv_contents $zcontents 0
end
end
define ____print_const_table
set $ht = $arg0
set $p = $ht->pListHead
define print_global_vars
____executor_globals
set $symtable = ((HashTable *)&($eg_ptr->symbol_table))
print_ht $symtable
end
while $p != 0
set $const = (zend_constant *) $p->pData
set $i = $ind
while $i > 0
printf " "
set $i = $i - 1
end
if $p->nKeyLength > 0
____print_str $p->arKey $p->nKeyLength
printf " => "
else
printf "%d => ", $p->h
end
____printzv_contents &$const->value 0
set $p = $p->pListNext
end
document print_global_vars
Prints the global variables
end
define print_const_table
set $ind = 1
printf "[%p] {\n", $arg0
____print_const_table $arg0
____print_ht $arg0 4
printf "}\n"
end
document print_const_table
Dumps elements of Constants HashTable
Example: print_const_table executor_globals.zend_constants
end
define ____print_ht
set $ht = (HashTable*)$arg0
set $n = $ind
@@ -342,7 +340,7 @@ define ____print_ht
set $n = $n - 1
end
printf "[%d] ", $i
if $p->key
if $p->key
printf "%s => ", $p->key->val
else
printf "%d => ", $p->h
@@ -361,6 +359,10 @@ define ____print_ht
set $func = (zend_function*)$p->val.value.ptr
printf "\"%s\"\n", $func->common.function_name->val
end
if $arg1 == 4
set $const = (zend_constant *)$p->val.value.ptr
____printzv $const 1
end
end
set $i = $i + 1
end
@@ -387,7 +389,7 @@ document print_htptr
end
define print_htstr
set $ind = 0
set $ind = 0
____print_ht $arg0 2
end
@@ -472,9 +474,12 @@ end
define print_pi
set $pi = (zend_property_info *)$arg0
set $initial_offset = ((uint32_t)(zend_uintptr_t)(&((zend_object*)0)->properties_table[(0)]))
set $ptr_to_val = (zval*)((char*)$pi->ce->default_properties_table + $pi->offset - $initial_offset)
printf "[%p] {\n", $pi
printf " offset = %p\n", $pi->offset
printf " ce = [%p] %s\n", $pi->ce, $pi->ce->name->val
printf " flags = %d (", $pi->flags
printf " flags = 0x%x (", $pi->flags
if $pi->flags & 0x100
printf "ZEND_ACC_PUBLIC"
else
@@ -485,7 +490,11 @@ define print_pi
printf "ZEND_ACC_PRIVATE"
else
if $pi->flags & 0x800
printf "ZEND_ACC_CHANGED"
printf "ZEND_ACC_EARLY_BINDING"
else
if $pi->flags & 0x20000
printf "ZEND_ACC_SHADOW"
end
end
end
end
@@ -493,6 +502,8 @@ define print_pi
printf ")\n"
printf " name = "
print_zstr $pi->name
printf " default value: "
printzv $ptr_to_val
printf "}\n"
end
@@ -532,10 +543,10 @@ define printzn
if $znode->op_type == 1
set $optype = "IS_CONST"
end
if $znode->op_type == 2
if $znode->op_type == 2
set $optype = "IS_TMP_VAR"
end
if $znode->op_type == 4
if $znode->op_type == 4
set $optype = "IS_VAR"
end
if $znode->op_type == 8
@@ -565,11 +576,11 @@ end
document printzn
print type and content of znode.
usage: printzn &opline->op1
usage: printzn &opline->op1
end
define printzops
printf "op1 => "
printf "op1 => "
printzn &execute_data->opline.op1
printf "op2 => "
printzn &execute_data->opline.op2
+1 -2
View File
@@ -26,7 +26,6 @@
*.tar.xz.asc
.FBCIndex
.FBCLockFolder
.deps
.libs
phpt.*
core
@@ -191,6 +190,7 @@ sapi/fpm/fpm/php-cgi
sapi/phpdbg/phpdbg_parser.c
sapi/phpdbg/phpdbg_parser.h
sapi/phpdbg/phpdbg
sapi/phpdbg/phpdbg.1
scripts/php-config
scripts/phpize
scripts/man1/*.1
@@ -231,4 +231,3 @@ win32/wsyslog.h
# special cases to invert previous ignore rules
!ext/fileinfo/libmagic.patch
!ext/mbstring/oniguruma.patch
+5 -3
View File
@@ -1,6 +1,6 @@
dist: trusty
language: c
sudo: false
sudo: required
addons:
apt:
packages:
@@ -19,7 +19,7 @@ addons:
- libt1-dev
notifications:
email:
email:
on_failure: change
irc:
template:
@@ -50,6 +50,8 @@ before_script:
- ccache --version
- ccache --zero-stats
- export USE_CCACHE=1
# Enable IPv6
- sudo sh -c 'echo 0 > /proc/sys/net/ipv6/conf/all/disable_ipv6'
# Compile PHP
- ./travis/compile.sh
# Setup Extensions
@@ -59,7 +61,7 @@ before_script:
- . ./travis/ext/pgsql/setup.sh
- . ./travis/ext/pdo_pgsql/setup.sh
# Run PHPs run-tests.php
# Run PHPs run-tests.php
script:
- ./sapi/cli/php run-tests.php -p `pwd`/sapi/cli/php $(if [ $ENABLE_DEBUG == 0 ]; then echo "-d opcache.enable_cli=1 -d zend_extension=`pwd`/modules/opcache.so"; fi) -g "FAIL,XFAIL,BORK,WARN,LEAK,SKIP" --offline --show-diff --show-slow 1000 --set-timeout 120
+1 -1
View File
@@ -113,7 +113,7 @@ User Functions/Methods Naming Conventions
of ``parent_*``::
A family of 'foo' functions, for example:
Good:
'foo_select_bar'
'foo_insert_baz'
+1 -1
View File
@@ -47,7 +47,7 @@ MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: fpm
PRIMARY MAINTAINER: Antony Dovgal <tony2001@php.net>, Jerome Loyet <fat@php.net>
PRIMARY MAINTAINER: Jakub Zelenka <bukka@php.net>
MAINTENANCE: Maintained
STATUS: Working
SINCE: 5.3.3
+13 -13
View File
@@ -1,7 +1,7 @@
--------------------------------------------------------------------
--------------------------------------------------------------------
The PHP License, version 3.01
Copyright (c) 1999 - 2018 The PHP Group. All rights reserved.
--------------------------------------------------------------------
--------------------------------------------------------------------
Redistribution and use in source and binary forms, with or without
modification, is permitted provided that the following conditions
@@ -9,22 +9,22 @@ are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution.
3. The name "PHP" must not be used to endorse or promote products
derived from this software without prior written permission. For
written permission, please contact group@php.net.
4. Products derived from this software may not be called "PHP", nor
may "PHP" appear in their name, without prior written permission
from group@php.net. You may indicate that your software works in
conjunction with PHP by saying "Foo for PHP" instead of calling
it "PHP Foo" or "phpfoo"
5. The PHP Group may publish revised and/or new versions of the
license from time to time. Each version will be given a
distinguishing version number.
@@ -41,27 +41,27 @@ are met:
"This product includes PHP software, freely available from
<http://www.php.net/software/>".
THIS SOFTWARE IS PROVIDED BY THE PHP DEVELOPMENT TEAM ``AS IS'' AND
THIS SOFTWARE IS PROVIDED BY THE PHP DEVELOPMENT TEAM ``AS IS'' AND
ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE PHP
DEVELOPMENT TEAM OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
DEVELOPMENT TEAM OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
OF THE POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------
--------------------------------------------------------------------
This software consists of voluntary contributions made by many
individuals on behalf of the PHP Group.
The PHP Group can be contacted via Email at group@php.net.
For more information on the PHP Group and the PHP project,
For more information on the PHP Group and the PHP project,
please see <http://www.php.net>.
PHP includes the Zend Engine, freely available at
-1
View File
@@ -1,4 +1,3 @@
#
# Zend
#
+1 -2
View File
@@ -1,4 +1,3 @@
#
# LCOV
#
@@ -62,7 +61,7 @@ php_lcov.info: lcov-test
rm -rf lcov_data/$$dir ; \
fi; \
done
@echo
@echo
@echo "Generating $@"
@$(LTP) --directory lcov_data/ --capture --base-directory=lcov_data --output-file $@
+1 -1
View File
@@ -121,7 +121,7 @@ distclean: clean
rm -f Makefile config.cache config.log config.status Makefile.objects Makefile.fragments libtool main/php_config.h main/internal_functions_cli.c main/internal_functions.c stamp-h buildmk.stamp Zend/zend_dtrace_gen.h Zend/zend_dtrace_gen.h.bak Zend/zend_config.h TSRM/tsrm_config.h
rm -f php7.spec main/build-defs.h scripts/phpize
rm -f ext/date/lib/timelib_config.h ext/mbstring/oniguruma/config.h ext/mbstring/libmbfl/config.h ext/oci8/oci8_dtrace_gen.h ext/oci8/oci8_dtrace_gen.h.bak
rm -f scripts/man1/phpize.1 scripts/php-config scripts/man1/php-config.1 sapi/cli/php.1 sapi/cgi/php-cgi.1 ext/phar/phar.1 ext/phar/phar.phar.1
rm -f scripts/man1/phpize.1 scripts/php-config scripts/man1/php-config.1 sapi/cli/php.1 sapi/cgi/php-cgi.1 sapi/phpdbg/phpdbg.1 ext/phar/phar.1 ext/phar/phar.phar.1
rm -f sapi/fpm/php-fpm.conf sapi/fpm/init.d.php-fpm sapi/fpm/php-fpm.service sapi/fpm/php-fpm.8 sapi/fpm/status.html
rm -f ext/iconv/php_have_bsd_iconv.h ext/iconv/php_have_glibc_iconv.h ext/iconv/php_have_ibm_iconv.h ext/iconv/php_have_iconv.h ext/iconv/php_have_libiconv.h ext/iconv/php_iconv_aliased_libiconv.h ext/iconv/php_iconv_supports_errno.h ext/iconv/php_php_iconv_h_path.h ext/iconv/php_php_iconv_impl.h
rm -f ext/phar/phar.phar ext/phar/phar.php
+552 -34
View File
@@ -1,6 +1,527 @@
PHP NEWS
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
?? ??? ????, PHP 7.2.2
06 Dec 2018, PHP 7.2.13
- ftp:
. Fixed bug #77151 (ftp_close(): SSL_read on shutdown). (Remi)
- CLI:
. Fixed bug #77111 (php-win.exe corrupts unicode symbols from cli
parameters). (Anatol)
- Fileinfo:
. Fixed bug #77095 (slowness regression in 7.2/7.3 (compared to 7.1)).
(Anatol)
- iconv:
. Fixed bug #77147 (Fixing 60494 ignored ICONV_MIME_DECODE_CONTINUE_ON_ERROR).
(cmb)
- Core:
. Fixed bug #77231 (Segfault when using convert.quoted-printable-encode
filter). (Stas)
- IMAP:
. Fixed bug #77153 (imap_open allows to run arbitrary shell commands via
mailbox parameter). (Stas)
- ODBC:
. Fixed bug #77079 (odbc_fetch_object has incorrect type signature).
(Jon Allen)
- Opcache:
. Fixed bug #77058 (Type inference in opcache causes side effects). (Nikita)
. Fixed bug #77092 (array_diff_key() - segmentation fault). (Nikita)
- Phar:
. Fixed bug #77022 (PharData always creates new files with mode 0666). (Stas)
. Fixed bug #77143 (Heap Buffer Overflow (READ: 4) in phar_parse_pharfile).
(Stas)
- PGSQL:
. Fixed bug #77047 (pg_convert has a broken regex for the 'TIME WITHOUT
TIMEZONE' data type). (Andy Gajetzki)
- SOAP:
. Fixed bug #50675 (SoapClient can't handle object references correctly).
(Cameron Porter)
. Fixed bug #76348 (WSDL_CACHE_MEMORY causes Segmentation fault). (cmb)
. Fixed bug #77141 (Signedness issue in SOAP when precision=-1). (cmb)
- Sockets:
. Fixed bug #67619 (Validate length on socket_write). (thiagooak)
08 Nov 2018, PHP 7.2.12
- Core:
. Fixed bug #76846 (Segfault in shutdown function after memory limit error).
(Nikita)
. Fixed bug #76946 (Cyclic reference in generator not detected). (Nikita)
. Fixed bug #77035 (The phpize and ./configure create redundant .deps file).
(Peter Kokot)
. Fixed bug #77041 (buildconf should output error messages to stderr)
(Mizunashi Mana)
- Date:
. Upgraded timelib to 2017.08. (Derick)
. Fixed bug #75851 (Year component overflow with date formats "c", "o", "r"
and "y"). (Adam Saponara)
. Fixed bug #77007 (fractions in `diff()` are not correctly normalized).
(Derick)
- FCGI:
. Fixed #76948 (Failed shutdown/reboot or end session in Windows). (Anatol)
. Fixed bug #76954 (apache_response_headers removes last character from header
name). (stodorovic)
- FTP:
. Fixed bug #76972 (Data truncation due to forceful ssl socket shutdown).
(Manuel Mausz)
- intl:
. Fixed bug #76942 (U_ARGUMENT_TYPE_MISMATCH). (anthrax at unixuser dot org)
- Reflection:
. Fixed bug #76936 (Objects cannot access their private attributes while
handling reflection errors). (Nikita)
. Fixed bug #66430 (ReflectionFunction::invoke does not invoke closure with
object scope). (Nikita)
- Sodium:
. Some base64 outputs were truncated; this is not the case any more.
(jedisct1)
. block sizes >= 256 bytes are now supposed by sodium_pad() even
when an old version of libsodium has been installed. (jedisct1)
. Fixed bug #77008 (sodium_pad() could read (but not return nor write)
uninitialized memory when trying to pad an empty input). (jedisct1)
- Standard:
. Fixed bug #76965 (INI_SCANNER_RAW doesn't strip trailing whitespace).
(Pierrick)
- Tidy:
. Fixed bug #77027 (tidy::getOptDoc() not available on Windows). (cmb)
- XML:
. Fixed bug #30875 (xml_parse_into_struct() does not resolve entities). (cmb)
. Add support for getting SKIP_TAGSTART and SKIP_WHITE options. (cmb)
- XMLRPC:
. Fixed bug #75282 (xmlrpc_encode_request() crashes). (cmb)
11 Oct 2018, PHP 7.2.11
- Core:
. Fixed bug #76800 (foreach inconsistent if array modified during loop).
(Dmitry)
. Fixed bug #76901 (method_exists on SPL iterator passthrough method corrupts
memory). (Nikita)
- CURL:
. Fixed bug #76480 (Use curl_multi_wait() so that timeouts are respected).
(Pierrick)
- iconv:
. Fixed bug #66828 (iconv_mime_encode Q-encoding longer than it should be).
(cmb)
- Opcache:
. Fixed bug #76832 (ZendOPcache.MemoryBase periodically deleted by the OS).
(Anatol)
. Fixed bug #76796 (Compile-time evaluation of disabled function in opcache
causes segfault). (Nikita)
- POSIX:
. Fixed bug #75696 (posix_getgrnam fails to print details of group). (cmb)
- Reflection:
. Fixed bug #74454 (Wrong exception being thrown when using ReflectionMethod).
(cmb)
- Standard:
. Fixed bug #73457 (Wrong error message when fopen FTP wrapped fails to open
data connection). (Ville Hukkamäki)
. Fixed bug #74764 (Bindto IPv6 works with file_get_contents but fails with
stream_socket_client). (Ville Hukkamäki)
. Fixed bug #75533 (array_reduce is slow when $carry is large array).
(Manabu Matsui)
- XMLRPC:
. Fixed bug #76886 (Can't build xmlrpc with expat). (Thomas Petazzoni, cmb)
- Zlib:
. Fixed bug #75273 (php_zlib_inflate_filter() may not update bytes_consumed).
(Martin Burke, cmb)
13 Sep 2018, PHP 7.2.10
- Core:
. Fixed bug #76754 (parent private constant in extends class memory leak).
(Laruence)
. Fixed bug #72443 (Generate enabled extension). (petk)
. Fixed bug #75797 (Memory leak when using class_alias() in non-debug mode).
(Massimiliano Braglia)
- Apache2:
. Fixed bug #76582 (Apache bucket brigade sometimes becomes invalid). (stas)
- Bz2:
. Fixed arginfo for bzcompress. (Tyson Andre)
- gettext:
. Fixed bug #76517 (incorrect restoring of LDFLAGS). (sji)
- iconv:
. Fixed bug #68180 (iconv_mime_decode can return extra characters in a
header). (cmb)
. Fixed bug #63839 (iconv_mime_decode_headers function is skipping headers).
(cmb)
. Fixed bug #60494 (iconv_mime_decode does ignore special characters). (cmb)
. Fixed bug #55146 (iconv_mime_decode_headers() skips some headers). (cmb)
- intl:
. Fixed bug #74484 (MessageFormatter::formatMessage memory corruption with
11+ named placeholders). (Anatol)
- libxml:
. Fixed bug #76777 ("public id" parameter of libxml_set_external_entity_loader
callback undefined). (Ville Hukkamäki)
- mbstring:
. Fixed bug #76704 (mb_detect_order return value varies based on argument
type). (cmb)
- Opcache:
. Fixed bug #76747 (Opcache treats path containing "test.pharma.tld" as a phar
file). (Laruence)
- OpenSSL:
. Fixed bug #76705 (unusable ssl => peer_fingerprint in
stream_context_create()). (Jakub Zelenka)
- phpdbg:
. Fixed bug #76595 (phpdbg man page contains outdated information).
(Kevin Abel)
- SPL:
. Fixed bug #68825 (Exception in DirectoryIterator::getLinkTarget()). (cmb)
. Fixed bug #68175 (RegexIterator pregFlags are NULL instead of 0). (Tim
Siebels)
- Standard:
. Fixed bug #76778 (array_reduce leaks memory if callback throws exception).
(cmb)
- zlib:
. Fixed bug #65988 (Zlib version check fails when an include/zlib/ style dir
is passed to the --with-zlib configure option). (Jay Bonci)
. Fixed bug #76709 (Minimal required zlib library is 1.2.0.4). (petk)
16 Aug 2018, PHP 7.2.9
- Calendar:
. Fixed bug #52974 (jewish.c: compile error under Windows with GBK charset).
(cmb)
- Filter:
. Fixed bug #76366 (References in sub-array for filtering breaks the filter).
(ZiHang Gao)
- PDO_Firebird:
. Fixed bug #76488 (Memory leak when fetching a BLOB field). (Simonov Denis)
- PDO_PgSQL:
. Fixed bug #75402 (Possible Memory Leak using PDO::CURSOR_SCROLL option).
(Anatol)
- SQLite3:
. Fixed #76665 (SQLite3Stmt::bindValue() with SQLITE3_FLOAT doesn't juggle).
(cmb)
- Standard:
. Fixed bug #73817 (Incorrect entries in get_html_translation_table). (cmb)
. Fixed bug #68553 (array_column: null values in $index_key become incrementing
keys in result). (Laruence)
. Fixed bug #76643 (Segmentation fault when using `output_add_rewrite_var`).
(cmb)
- Zip:
. Fixed bug #76524 (ZipArchive memory leak (OVERWRITE flag and empty archive)).
(Timur Ibragimov)
19 Jul 2018, PHP 7.2.8
- Core:
. Fixed bug #76534 (PHP hangs on 'illegal string offset on string references
with an error handler). (Laruence)
. Fixed bug #76520 (Object creation leaks memory when executed over HTTP).
(Nikita)
. Fixed bug #76502 (Chain of mixed exceptions and errors does not serialize
properly). (Nikita)
- Date:
. Fixed bug #76462 (Undefined property: DateInterval::$f). (Anatol)
- EXIF:
. Fixed bug #76409 (heap use after free in _php_stream_free). (cmb)
. Fixed bug #76423 (Int Overflow lead to Heap OverFlow in
exif_thumbnail_extract of exif.c). (Stas)
. Fixed bug #76557 (heap-buffer-overflow (READ of size 48) while reading exif
data). (Stas)
- FPM:
. Fixed bug #73342 (Vulnerability in php-fpm by changing stdin to
non-blocking). (Nikita)
- GMP:
. Fixed bug #74670 (Integer Underflow when unserializing GMP and possible
other classes). (Nikita)
- intl:
. Fixed bug #76556 (get_debug_info handler for BreakIterator shows wrong
type). (cmb)
- mbstring:
. Fixed bug #76532 (Integer overflow and excessive memory usage
in mb_strimwidth). (MarcusSchwarz)
- Opcache:
. Fixed bug #76477 (Opcache causes empty return value).
(Nikita, Laruence)
- PGSQL:
. Fixed bug #76548 (pg_fetch_result did not fetch the next row). (Anatol)
- phpdbg:
. Fix arginfo wrt. optional/required parameters. (cmb)
- Reflection:
. Fixed bug #76536 (PHP crashes with core dump when throwing exception in
error handler). (Laruence)
. Fixed bug #75231 (ReflectionProperty#getValue() incorrectly works with
inherited classes). (Nikita)
- Standard:
. Fixed bug #76505 (array_merge_recursive() is duplicating sub-array keys).
(Laruence)
. Fixed bug #71848 (getimagesize with $imageinfo returns false). (cmb)
- Win32:
. Fixed bug #76459 (windows linkinfo lacks openbasedir check). (Anatol)
- ZIP:
. Fixed bug #76461 (OPSYS_Z_CPM defined instead of OPSYS_CPM).
(Dennis Birkholz, Remi)
07 Jun 2018, PHP 7.2.7
- Core:
. Fixed bug #76337 (segfault when opcache enabled + extension use
zend_register_class_alias). (xKhorasan)
- CLI Server:
. Fixed bug #76333 (PHP built-in server does not find files if root path
contains special characters). (Anatol)
- OpenSSL:
. Fixed bug #76296 (openssl_pkey_get_public does not respect open_basedir).
(Erik Lax, Jakub Zelenka)
. Fixed bug #76174 (openssl extension fails to build with LibreSSL 2.7).
(Jakub Zelenka)
- SPL:
. Fixed bug #76367 (NoRewindIterator segfault 11). (Laruence)
- Standard:
. Fixed bug #76410 (SIGV in zend_mm_alloc_small). (Laruence)
. Fixed bug #76335 ("link(): Bad file descriptor" with non-ASCII path).
(Anatol)
24 May 2018, PHP 7.2.6
- EXIF:
. Fixed bug #76164 (exif_read_data zend_mm_heap corrupted). (cmb)
- FPM:
. Fixed bug #76075 --with-fpm-acl wrongly tries to find libacl on FreeBSD.
(mgorny)
- intl:
. Fixed bug #74385 (Locale::parseLocale() broken with some arguments).
(Anatol)
- Opcache:
. Fixed bug #76205 (PHP-FPM sporadic crash when running Infinitewp). (Dmitry)
. Fixed bug #76275 (Assertion failure in file cache when unserializing empty
try_catch_array). (Nikita)
. Fixed bug #76281 (Opcache causes incorrect "undefined variable" errors).
(Nikita)
- Reflection:
. Fixed arginfo of array_replace(_recursive) and array_merge(_recursive).
(carusogabriel)
- Session:
. Fixed bug #74892 (Url Rewriting (trans_sid) not working on urls that start
with "#"). (Andrew Nester)
26 Apr 2018, PHP 7.2.5
- Core:
. Fixed bug #75722 (Convert valgrind detection to configure option).
(Michael Heimpold)
- Date:
. Fixed bug #76131 (mismatch arginfo for date_create). (carusogabriel)
- Exif:
. Fixed bug #76130 (Heap Buffer Overflow (READ: 1786) in exif_iif_add_value).
(Stas)
- FPM:
. Fixed bug #68440 (ERROR: failed to reload: execvp() failed: Argument list
too long). (Jacob Hipps)
. Fixed incorrect write to getenv result in FPM reload. (Jakub Zelenka)
- GD:
. Fixed bug #52070 (imagedashedline() - dashed line sometimes is not visible).
(cmb)
- iconv:
. Fixed bug #76249 (stream filter convert.iconv leads to infinite loop on
invalid sequence). (Stas)
- intl:
. Fixed bug #76153 (Intl compilation fails with icu4c 61.1). (Anatol)
- ldap:
. Fixed bug #76248 (Malicious LDAP-Server Response causes Crash). (Stas)
- mbstring:
. Fixed bug #75944 (Wrong cp1251 detection). (dmk001)
. Fixed bug #76113 (mbstring does not build with Oniguruma 6.8.1).
(chrullrich, cmb)
- ODBC:
. Fixed bug #76088 (ODBC functions are not available by default on Windows).
(cmb)
- Opcache:
. Fixed bug #76094 (Access violation when using opcache). (Laruence)
- Phar:
. Fixed bug #76129 (fix for CVE-2018-5712 may not be complete). (Stas)
- phpdbg:
. Fixed bug #76143 (Memory corruption: arbitrary NUL overwrite). (Laruence)
- SPL:
. Fixed bug #76131 (mismatch arginfo for splarray constructor).
(carusogabriel)
- standard:
. Fixed bug #74139 (mail.add_x_header default inconsistent with docs). (cmb)
. Fixed bug #75996 (incorrect url in header for mt_rand). (tatarbj)
29 Mar 2018, PHP 7.2.4
- Core:
. Fixed bug #76025 (Segfault while throwing exception in error_handler).
(Dmitry, Laruence)
. Fixed bug #76044 ('date: illegal option -- -' in ./configure on FreeBSD).
(Anatol)
- FPM:
. Fixed bug #75605 (Dumpable FPM child processes allow bypassing opcache
access controls). (Jakub Zelenka)
- FTP:
. Fixed ftp_pasv arginfo. (carusogabriel)
-GD:
. Fixed bug #73957 (signed integer conversion in imagescale()). (cmb)
. Fixed bug #76041 (null pointer access crashed php). (cmb)
. Fixed imagesetinterpolation arginfo. (Gabriel Caruso)
- iconv:
. Fixed bug #75867 (Freeing uninitialized pointer). (Philip Prindeville)
- Mbstring:
. Fixed bug #62545 (wrong unicode mapping in some charsets). (cmb)
- Opcache:
. Fixed bug #75969 (Assertion failure in live range DCE due to block pass
misoptimization). (Nikita)
- OpenSSL:
. Fixed openssl_* arginfos. (carusogabriel)
- PCNTL:
. Fixed bug #75873 (pcntl_wexitstatus returns incorrect on Big_Endian platform
(s390x)). (Sam Ding)
- Phar:
. Fixed bug #76085 (Segmentation fault in buildFromIterator when directory
name contains a \n). (Laruence)
- Standard:
. Fixed bug #75961 (Strange references behavior). (Laruence)
. Fixed some arginfos. (carusogabriel)
. Fixed bug #76068 (parse_ini_string fails to parse "[foo]\nbar=1|>baz" with
segfault). (Anatol)
01 Mar 2018, PHP 7.2.3
- Core:
. Fixed bug #75864 ("stream_isatty" returns wrong value on s390x). (Sam Ding)
- Apache2Handler:
. Fixed bug #75882 (a simple way for segfaults in threadsafe php just with
configuration). (Anatol)
- Date:
. Fixed bug #75857 (Timezone gets truncated when formatted). (carusogabriel)
. Fixed bug #75928 (Argument 2 for `DateTimeZone::listIdentifiers()` should
accept `null`). (Pedro Lacerda)
. Fixed bug #68406 (calling var_dump on a DateTimeZone object modifies it).
(jhdxr)
- LDAP:
. Fixed bug #49876 (Fix LDAP path lookup on 64-bit distros). (dzuelke)
- libxml2:
. Fixed bug #75871 (use pkg-config where available). (pmmaga)
- PGSQL:
. Fixed bug #75838 (Memory leak in pg_escape_bytea()). (ard_1 at mail dot ru)
- Phar:
. Fixed bug #54289 (Phar::extractTo() does not accept specific directories to
be extracted). (bishop)
. Fixed bug #65414 (deal with leading slash while adding files correctly).
(bishopb)
. Fixed bug #65414 (deal with leading slash when adding files correctly).
(bishopb)
- ODBC:
. Fixed bug #73725 (Unable to retrieve value of varchar(max) type). (Anatol)
- Opcache:
. Fixed bug #75729 (opcache segfault when installing Bitrix). (Nikita)
. Fixed bug #75893 (file_get_contents $http_response_header variable bugged
with opcache). (Nikita)
. Fixed bug #75938 (Modulus value not stored in variable). (Nikita)
- SPL:
. Fixed bug #74519 (strange behavior of AppendIterator). (jhdxr)
- Standard:
. Fixed bug #75916 (DNS_CAA record results contain garbage). (Mike,
Philip Sharp)
. Fixed bug #75981 (Prevent reading beyond buffer start in http wrapper).
(Stas)
01 Feb 2018, PHP 7.2.2
- Core:
. Fixed bug #75742 (potential memleak in internal classes's static members).
@@ -21,9 +542,12 @@ PHP NEWS
. Fixed bug #75774 (imap_append HeapCorruction). (Anatol)
- Opcache:
. Fixed bug #75720 (File cache not populated after SHM runs full). (Dmitry)
. Fixed bug #75687 (var 8 (TMP) has array key type but not value type).
(Nikita, Laruence)
. Fixed bug #75698 (Using @ crashes php7.2-fpm). (Nikita)
. Fixed bug #75579 (Interned strings buffer overflow may cause crash).
(Dmitry)
- PDO:
. Fixed bug #75616 (PDO extension doesn't allow to be built shared on Darwin).
@@ -32,11 +556,6 @@ PHP NEWS
- PDO MySQL:
. Fixed bug #75615 (PDO Mysql module can't be built as module). (jdolecek)
- Opcache:
. Fixed bug #75720 (File cache not populated after SHM runs full). (Dmitry)
. Fixed bug #75579 (Interned strings buffer overflow may cause crash).
(Dmitry)
- PGSQL:
. Fixed bug #75671 (pg_version() crashes when called on a connection to
cockroach). (magicaltux at gmail dot com)
@@ -55,7 +574,7 @@ PHP NEWS
. Fixed bug #75502 (Segmentation fault in zend_string_release). (Nikita)
- SPL:
. Fixed bug #75717 (RecursiveArrayIterator does not traverse arrays by
. Fixed bug #75717 (RecursiveArrayIterator does not traverse arrays by
reference). (Nikita)
. Fixed bug #75242 (RecursiveArrayIterator doesn't have constants from parent
class). (Nikita)
@@ -119,7 +638,7 @@ PHP NEWS
(Remi)
. Fixed bug #75535 (Inappropriately parsing HTTP response leads to PHP
segment fault). (Nikita)
. Fixed bug #75409 (accept EFAULT in addition to ENOSYS as indicator
. Fixed bug #75409 (accept EFAULT in addition to ENOSYS as indicator
that getrandom() is missing). (sarciszewski)
. Fixed bug #73124 (php_ini_scanned_files() not reporting correctly).
(John Stevenson)
@@ -174,7 +693,7 @@ PHP NEWS
(Anatol)
. Implemented minor optimization in array_keys/array_values(). (Sara)
. Added PHP_OS_FAMILY constant to determine on which OS we are. (Jan Altensen)
. Fixed bug #73987 (Method compatibility check looks to original
. Fixed bug #73987 (Method compatibility check looks to original
definition and not parent). (pmmaga)
. Fixed bug #73991 (JSON_OBJECT_AS_ARRAY not respected). (Sara)
. Fixed bug #74053 (Corrupted class entries on shutdown when a destructor
@@ -204,7 +723,7 @@ PHP NEWS
. Added new VM instuctions ISSET_ISEMPTY_CV and UNSET_CV. Previously they
were implemented as ISSET_ISEMPTY_VAR and UNSET_VAR variants with
ZEND_QUICK_SET flag. (Nikita, Dmitry)
. Fixed bug #49649 (unserialize() doesn't handle changes in property
. Fixed bug #49649 (unserialize() doesn't handle changes in property
visibility). (pmmaga)
. Fixed #74866 (extension_dir = "./ext" now use current directory for base).
(Francois Laupretre)
@@ -237,7 +756,7 @@ PHP NEWS
- EXIF:
. Added support for vendor specific tags for the following formats:
Samsung, DJI, Panasonic, Sony, Pentax, Minolta, Sigma/Foveon, AGFA,
Samsung, DJI, Panasonic, Sony, Pentax, Minolta, Sigma/Foveon, AGFA,
Kyocera, Ricoh & Epson. (Kalle)
. Fixed bug #72682 (exif_read_data() fails to read all data for some
images). (Kalle)
@@ -249,15 +768,15 @@ PHP NEWS
reached for some cameras). (Kalle)
. Fixed Redhat bug #1362571 (PHP not returning full results for
exif_read_data function). (Kalle)
. Implemented #65187 (exif_read_data/thumbnail: add support for stream
. Implemented #65187 (exif_read_data/thumbnail: add support for stream
resource). (Kalle)
. Deprecated the read_exif_data() alias. (Kalle)
. Fixed bug #74428 (exif_read_data(): "Illegal IFD size" warning occurs with
. Fixed bug #74428 (exif_read_data(): "Illegal IFD size" warning occurs with
correct exif format). (bradpiccho at gmail dot com, Kalle)
. Fixed bug #72819 (EXIF thumbnails not read anymore). (Kalle)
. Fixed bug #62523 (php crashes with segfault when exif_read_data called).
. Fixed bug #62523 (php crashes with segfault when exif_read_data called).
(Kalle)
. Fixed bug #50660 (exif_read_data(): Illegal IFD offset (works fine with
. Fixed bug #50660 (exif_read_data(): Illegal IFD offset (works fine with
other exif readers). (skinny dot bravo at gmail dot com, Kalle)
- Fileinfo:
@@ -287,7 +806,7 @@ PHP NEWS
. Fixed Bug #75284 (sha3 is not supported on bigendian machine). (Remi)
- IMAP:
. Fixed bug #72324 (imap_mailboxmsginfo() return wrong size).
. Fixed bug #72324 (imap_mailboxmsginfo() return wrong size).
(ronaldpoon at udomain dot com dot hk, Kalle)
- Intl:
@@ -392,7 +911,7 @@ PHP NEWS
read-only/getter mode). (Yasuo)
. Fixed bug #74936 (session_cache_expire/cache_limiter/save_path() trigger a
warning in read mode). (morozov)
. Fixed bug #74941 (session fails to start after having headers sent).
. Fixed bug #74941 (session fails to start after having headers sent).
(morozov)
- Sodium:
@@ -475,7 +994,7 @@ PHP NEWS
. Fixed bug #75437 (Wrong reflection on imagewebp). (Fabien Villepinte)
- intl:
. Fixed bug #75317 (UConverter::setDestinationEncoding changes source instead
. Fixed bug #75317 (UConverter::setDestinationEncoding changes source instead
of destination). (andrewnester)
- interbase:
@@ -513,7 +1032,7 @@ PHP NEWS
. Fixed bug #75236 (infinite loop when printing an error-message). (Andrea)
. Fixed bug #75252 (Incorrect token formatting on two parse errors in one
request). (Nikita)
. Fixed bug #75220 (Segfault when calling is_callable on parent).
. Fixed bug #75220 (Segfault when calling is_callable on parent).
(andrewnester)
. Fixed bug #75290 (debug info of Closures of internal functions contain
garbage argument names). (Andrea)
@@ -533,7 +1052,7 @@ PHP NEWS
optional). (cmb)
- litespeed:
. Fixed bug #75248 (Binary directory doesn't get created when building
. Fixed bug #75248 (Binary directory doesn't get created when building
only litespeed SAPI). (petk)
. Fixed bug #75251 (Missing program prefix and suffix). (petk)
@@ -660,7 +1179,7 @@ PHP NEWS
. Fixed bug #75049 (spl_autoload_unregister can't handle
spl_autoload_functions results). (Laruence)
. Fixed bug #74669 (Unserialize ArrayIterator broken). (Andrew Nester)
. Fixed bug #74977 (Appending AppendIterator leads to segfault).
. Fixed bug #74977 (Appending AppendIterator leads to segfault).
(Andrew Nester)
. Fixed bug #75015 (Crash in recursive iterator destructors). (Julien)
@@ -681,9 +1200,9 @@ PHP NEWS
03 Aug 2017, PHP 7.1.8
- Core:
. Fixed bug #74832 (Loading PHP extension with already registered function
. Fixed bug #74832 (Loading PHP extension with already registered function
name leads to a crash). (jpauli)
. Fixed bug #74780 (parse_url() broken when query string contains colon).
. Fixed bug #74780 (parse_url() broken when query string contains colon).
(jhdxr)
. Fixed bug #74761 (Unary operator expected error on some systems). (petk)
. Fixed bug #73900 (Use After Free in unserialize() SplFixedArray). (nikic)
@@ -692,7 +1211,7 @@ PHP NEWS
. Fixed bug #74906 (fixed incorrect errno.h include). (petk)
- Date:
. Fixed bug #74852 (property_exists returns true on unknown DateInterval
. Fixed bug #74852 (property_exists returns true on unknown DateInterval
property). (jhdxr)
- OCI8:
@@ -903,7 +1422,7 @@ PHP NEWS
(Jakub Zelenka)
- phar:
. Fixed bug #74383 (phar method parameters reflection correction).
. Fixed bug #74383 (phar method parameters reflection correction).
(mhagstrand)
- Readline:
@@ -1075,7 +1594,7 @@ PHP NEWS
. Fixed bug #72898 (PHP_FCGI_CHILDREN is not included in phpinfo()). (Anatol)
- FPM:
. Fixed bug #69865 (php-fpm does not close stderr when using syslog).
. Fixed bug #69865 (php-fpm does not close stderr when using syslog).
(m6w6)
- GD:
@@ -1083,7 +1602,7 @@ PHP NEWS
- GMP:
. Fixed bug #69993 (test for gmp.h needs to test machine includes).
(Jordan Gigov)
(Jordan Gigov)
- Hash:
. Added hash_hkdf() function. (Andrey Andreev)
@@ -1117,7 +1636,7 @@ PHP NEWS
. Implemented FR #72583 (All data are fetched as strings). (Dorin Marcoci)
- PDO_PgSQL:
. Fixed bug #73959 (lastInsertId fails to throw an exception for wrong
. Fixed bug #73959 (lastInsertId fails to throw an exception for wrong
sequence name). (andrewnester)
- Phar:
@@ -1181,7 +1700,7 @@ PHP NEWS
- Mysqlnd:
. Optimized handling of BIT fields - less memory copies and lower memory
usage. (Andrey)
. Fixed bug #73800 (sporadic segfault with MYSQLI_OPT_INT_AND_FLOAT_NATIVE).
. Fixed bug #73800 (sporadic segfault with MYSQLI_OPT_INT_AND_FLOAT_NATIVE).
(vanviegen)
- Opcache:
@@ -1687,7 +2206,7 @@ PHP NEWS
- PCRE:
. Fixed bug #73483 (Segmentation fault on pcre_replace_callback). (Laruence)
. Fixed bug #73612 (preg_*() may leak memory). (cmb)
. Fixed bug #73392 (A use-after-free in zend allocator management).
. Fixed bug #73392 (A use-after-free in zend allocator management).
(Laruence)
. Fixed bug #73121 (Bundled PCRE doesn't compile because JIT isn't supported
on s390). (Anatol)
@@ -1783,7 +2302,7 @@ PHP NEWS
. Implemented RFC: Session ID without hashing. (Yasuo)
https://wiki.php.net/rfc/session-id-without-hashing
. Fixed bug #72531 (ps_files_cleanup_dir Buffer overflow). (Laruence)
. Custom session handlers that do not return strings for session IDs will
. Custom session handlers that do not return strings for session IDs will
now throw an instance of Error instead of resulting in a fatal error
when a function is called that must generate a session ID.
(Aaron Piotrowski)
@@ -1819,7 +2338,7 @@ PHP NEWS
unserialize()). (Stas)
- Soap:
. Fixed bug #73538 (SoapClient::__setSoapHeaders doesn't overwrite SOAP
. Fixed bug #73538 (SoapClient::__setSoapHeaders doesn't overwrite SOAP
headers). (duncan3dc)
. Fixed bug #73452 (Segfault (Regression for #69152)). (Dmitry)
. Fixed bug #73037 (SoapServer reports Bad Request when gzipped). (Anatol)
@@ -1827,7 +2346,7 @@ PHP NEWS
(Keith Smiley)
. Fixed bug #69137 (Peer verification fails when using a proxy with SoapClient)
(Keith Smiley)
. Fixed bug #71711 (Soap Server Member variables reference bug). (Nikita)
. Fixed bug #71711 (Soap Server Member variables reference bug). (Nikita)
. Fixed bug #71996 (Using references in arrays doesn't work like expected).
(Nikita)
@@ -1972,4 +2491,3 @@ PHP NEWS
php_stream_zip_opener). (Stas)
. ZipArchive::addGlob() will throw an instance of Error instead of resulting
in a fatal error if glob support is not available. (Aaron Piotrowski)
+9 -10
View File
@@ -1,6 +1,6 @@
(NOTE: you may also want to take a look at the pear package
PECL_Gen, a PHP-only alternative for this script that
supports way more extension writing tasks and is
supports way more extension writing tasks and is
supposed to replace ext_skel completely in the long run ...)
WHAT IT IS
@@ -17,16 +17,16 @@ HOW TO USE IT
./ext_skel --extname=module_name
and everything you need is placed in directory module_name.
and everything you need is placed in directory module_name.
[ Note that GNU awk is likely required for this script to work. Debian
systems seem to default to using mawk, so you may need to change the
[ Note that GNU awk is likely required for this script to work. Debian
systems seem to default to using mawk, so you may need to change the
#! line in skeleton/create_stubs and the cat $proto | awk line in
ext_skel to use gawk explicitly. ]
If you don't need to test the existence of any external header files,
libraries or functions in them, the module is already almost ready to be
compiled in PHP. Just remove 3 comments in your_module_name/config.m4,
If you don't need to test the existence of any external header files,
libraries or functions in them, the module is already almost ready to be
compiled in PHP. Just remove 3 comments in your_module_name/config.m4,
change back up to PHP sources top directory, and do
./buildconf; ./configure --enable-module_name; make
@@ -83,7 +83,7 @@ FORMAT OF FUNCTION DEFINITIONS FILE
']'s as there where '['s. Currently, it does not harm if you forget to do it
or there is a wrong amount of ']'s, but this may change in the future.
An additional short description may be added after the parameters.
An additional short description may be added after the parameters.
If present it will be filled into the 'proto' header comments in the stubs
code and the <refpurpose> tag in the XML documentation.
@@ -135,7 +135,7 @@ CURRENT LIMITATIONS, BUGS AND OTHER ODDITIES
handled. For other types you must write the code yourself. And for type
mixed, it wouldn't even be possible to write anything, because only you
know what to expect.
It can't handle correctly, and probably never will, variable list of
of arguments. (void foo(int bar [, ...])
@@ -185,4 +185,3 @@ PHP_FUNCTION(module_name_drawtext)
php_error(E_WARNING, "module_name_drawtext: not yet implemented");
}
/* }}} */
+2 -2
View File
@@ -44,7 +44,7 @@ Having said that, here are the organizational rules::
Currently we have the following branches in use::
master The active development branch.
master The active development branch.
PHP-7.1 Is used to release the PHP 7.1.x series. This is a prerelease
version.
@@ -110,7 +110,7 @@ The format of the commit messages is pretty simple.
An Example from the git project (commit 2b34e486bc):
pack-objects: Fix compilation with NO_PTHREDS
It looks like commit 99fb6e04 (pack-objects: convert to use
parse_options(), 2012-02-01) moved the #ifdef NO_PTHREDS around but
hasn't noticed that the 'arg' variable no longer is available.
+2 -2
View File
@@ -3,7 +3,7 @@ $Id: README.NEW-OUTPUT-API 219039 2006-08-30 07:39:09Z mike $
API adjustment to the old output control code:
Everything now resides beneath the php_output namespace,
Everything now resides beneath the php_output namespace,
and there's an API call for every output handler op.
Checking output control layers status:
@@ -134,7 +134,7 @@ Output handler hooks
Open questions
Should the userland API be adjusted and unified?
Many bits of the manual (and very first implementation) do not comply
with the behaviour of the current (to be obsoleted) code, thus should
the manual or the behaviour be adjusted?
+9 -9
View File
@@ -42,11 +42,11 @@ See also https://wiki.php.net/rfc/zpp_improv#expose_zend_parse_arg_as_zend_parse
Type specifiers
---------------
The following list shows the type specifier, its meaning and the parameter
The following list shows the type specifier, its meaning and the parameter
types that need to be passed by address. All passed parameters are set
if the PHP parameter is non optional and untouched if optional and the
if the PHP parameter is non optional and untouched if optional and the
parameter is not present. The only exception is O where the zend_class_entry*
has to be provided on input and is used to verify the PHP parameter is an
has to be provided on input and is used to verify the PHP parameter is an
instance of that class.
a - array (zval*)
@@ -54,7 +54,7 @@ Type specifiers
b - boolean (zend_bool)
C - class (zend_class_entry*)
d - double (double)
f - function or array containing php method call info (returned as
f - function or array containing php method call info (returned as
zend_fcall_info and zend_fcall_info_cache)
h - array (returned as HashTable*)
H - array or HASH_OF(object) (returned as HashTable*)
@@ -88,9 +88,9 @@ Type specifiers
Note on 64bit compatibility
---------------------------
Please note that since version 7 PHP uses zend_long as integer type and
zend_string with size_t as length, so make sure you pass zend_longs to "l"
and size_t to strings length (i.e. for "s" you need to pass char * and size_t),
Please note that since version 7 PHP uses zend_long as integer type and
zend_string with size_t as length, so make sure you pass zend_longs to "l"
and size_t to strings length (i.e. for "s" you need to pass char * and size_t),
not the other way round!
Both mistakes might cause memory corruptions and segfaults:
@@ -103,7 +103,7 @@ Both mistakes might cause memory corruptions and segfaults:
int num; /* XXX THIS IS WRONG!! Use zend_long instead. */
zend_parse_parameters(ZEND_NUM_ARGS(), "l", &num)
If you're in doubt, use check_parameters.php script to the parameters
If you're in doubt, use check_parameters.php script to the parameters
and their types (it can be found in ./scripts/dev/ directory of PHP sources):
# php ./scripts/dev/check_parameters.php /path/to/your/sources/
@@ -152,7 +152,7 @@ if (zend_parse_parameters(ZEND_NUM_ARGS(), "a/!",
/* Get either a set of 3 longs or a string. */
zend_long l1, l2, l3;
char *s;
/*
/*
* The function expects a pointer to a size_t in this case, not a long
* or any other type. If you specify a type which is larger
* than a 'size_t', the upper bits might not be initialized
+21 -22
View File
@@ -46,7 +46,7 @@ HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
6. ext/standard crypt's blowfish implementation
@@ -92,7 +92,7 @@ http://www.usenix.org/events/usenix99/provos.html
Some of the tricks in BF_ROUND might be inspired by Eric Young's
Blowfish library (I can't be sure if I would think of something if I
hadn't seen his code).
7. Sqlite/Sqlite3 ext/sqlite3 ext/sqlite
@@ -126,7 +126,7 @@ Modeling and Computer Simulation, Vol. 8, No. 1, January 1998, pp 3-30.
Copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura,
Copyright (C) 2000 - 2003, Richard J. Wagner
All rights reserved.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
@@ -139,8 +139,8 @@ are met:
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. The names of its contributors may not be used to endorse or promote
products derived from this software without specific prior written
3. The names of its contributors may not be used to endorse or promote
products derived from this software without specific prior written
permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
@@ -261,26 +261,26 @@ SUCH DAMAGE.
12. libxmlrpc ext/xmlrpc
Copyright 2000 Epinions, Inc.
Copyright 2000 Epinions, Inc.
Subject to the following 3 conditions, Epinions, Inc. permits you, free
of charge, to (a) use, copy, distribute, modify, perform and display this
software and associated documentation files (the "Software"), and (b)
permit others to whom the Software is furnished to do so as well.
Subject to the following 3 conditions, Epinions, Inc. permits you, free
of charge, to (a) use, copy, distribute, modify, perform and display this
software and associated documentation files (the "Software"), and (b)
permit others to whom the Software is furnished to do so as well.
1) The above copyright notice and this permission notice shall be included
without modification in all copies or substantial portions of the
Software.
1) The above copyright notice and this permission notice shall be included
without modification in all copies or substantial portions of the
Software.
2) THE SOFTWARE IS PROVIDED "AS IS", WITHOUT ANY WARRANTY OR CONDITION OF
ANY KIND, EXPRESS, IMPLIED OR STATUTORY, INCLUDING WITHOUT LIMITATION ANY
IMPLIED WARRANTIES OF ACCURACY, MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE OR NONINFRINGEMENT.
2) THE SOFTWARE IS PROVIDED "AS IS", WITHOUT ANY WARRANTY OR CONDITION OF
ANY KIND, EXPRESS, IMPLIED OR STATUTORY, INCLUDING WITHOUT LIMITATION ANY
IMPLIED WARRANTIES OF ACCURACY, MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE OR NONINFRINGEMENT.
3) IN NO EVENT SHALL EPINIONS, INC. BE LIABLE FOR ANY DIRECT, INDIRECT,
SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES OR LOST PROFITS ARISING OUT
OF OR IN CONNECTION WITH THE SOFTWARE (HOWEVER ARISING, INCLUDING
NEGLIGENCE), EVEN IF EPINIONS, INC. IS AWARE OF THE POSSIBILITY OF SUCH
3) IN NO EVENT SHALL EPINIONS, INC. BE LIABLE FOR ANY DIRECT, INDIRECT,
SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES OR LOST PROFITS ARISING OUT
OF OR IN CONNECTION WITH THE SOFTWARE (HOWEVER ARISING, INCLUDING
NEGLIGENCE), EVEN IF EPINIONS, INC. IS AWARE OF THE POSSIBILITY OF SUCH
DAMAGES.
13. libzip ext/zip
@@ -414,4 +414,3 @@ OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+6 -7
View File
@@ -32,7 +32,7 @@ team (Bjori) on hand.
6. Verify the tags to be extra sure everything was tagged properly.
7. Moving extensions from/to PECL requires write access to the destination.
Most developers should have this.
Most developers should have this.
Moving extensions from php-src to PECL
- Checkout the pecl directory, most likely you want a sparse-root checkout
@@ -125,7 +125,7 @@ Getting the non stable release (alpha/beta/RC) announced
b. ``$PHP_x_RC_DATE`` = "06 September 2007"
3. Add a short notice to phpweb stating that there is a new release, and
3. Add a short notice to phpweb stating that there is a new release, and
highlight the major important things (security fixes) and when it is important
to upgrade.
@@ -140,7 +140,7 @@ to upgrade.
*Wait for web and qa sites to update with new information before sending announce*
5. Send an email **To** ``internals@lists.php.net`` and ``php-general@lists.php.net``
5. Send an email **To** ``internals@lists.php.net`` and ``php-general@lists.php.net``
lists pointing out "the location of the release" and "the possible release date of
either the next RC, or the final release". Include in this information the verification
information output by ``gen_verify_stub``.
@@ -193,7 +193,7 @@ Check if the pear files are updated (phar).
``gpg -u YOUREMAIL --armor --detach-sign php-X.Y.Z.tar.xxx``
11. Commit and push all the tarballs and signature files to web/php-distributions.git,
then update the git submodule reference in web/php.git:
then update the git submodule reference in web/php.git:
``git submodule init;
git submodule update;
cd distributions;
@@ -263,7 +263,7 @@ f.e. ``ChangeLog-5.php`` from the NEWS file
IV. ``s/Fixed PECL bug #\([0-9]\+\)/<?php peclbugfix(\1); ?>/``
V. ``s/FR #\([0-9]\+\)/FR <?php bugl(\1); ?>/``
e. You may want to try php-web/bin/news2html to automate this task
6. Add a short notice to phpweb stating that there is a new release, and
@@ -338,7 +338,7 @@ New Release Manager Checklist
one or more of the previous RMs sign your key. Publish your public key to pgp.mit.edu with:
`gpg --keyserver pgp.mit.edu --send-keys $KEYID`
3. Request karma to eding main/php_version.h. Possibly karma for other restricted parts of
3. Request karma to eding main/php_version.h. Possibly karma for other restricted parts of
php-src might come in question.
4. Request karma for web/qa.git and web/php.git for publishing release announcements.
@@ -346,4 +346,3 @@ New Release Manager Checklist
5. Request moderation access to announce@php.net and primary-qa-tester@lists.php.net lists, to
be able to moderate your release announcements. All the announcements should be sent from
the @php.net alias.
+8 -9
View File
@@ -23,7 +23,7 @@ PREPARING YOUR SYSTEM
GNU libtool
GNU m4
All of these are available from
All of these are available from
ftp://ftp.gnu.org/pub/gnu/
@@ -33,7 +33,7 @@ CONVERTING AN EXISTING EXTENSION
extension, we will convert an embedded extension into a
self-contained one. Install PHP and execute the following
commands.
$ mkdir /tmp/newext
$ cd /tmp/newext
@@ -56,7 +56,7 @@ CONVERTING AN EXISTING EXTENSION
[--with-mysql=MYSQL-DIR]
$ make install
The MySQL module will either use the embedded MySQL client
The MySQL module will either use the embedded MySQL client
library or the MySQL installation in MYSQL-DIR.
@@ -67,8 +67,8 @@ DEFINING THE NEW EXTENSION
It consists of two source files "foo.c" and "bar.c"
(and any arbitrary amount of header files, but that is not
important here).
The demo extension does not reference any external
The demo extension does not reference any external
libraries (that is important, because the user does not
need to specify anything).
@@ -78,7 +78,7 @@ DEFINING THE NEW EXTENSION
CREATING THE M4 CONFIGURATION FILE
The m4 configuration can perform additional checks. For a
The m4 configuration can perform additional checks. For a
self-contained extension, you do not need more than a few
macro calls.
@@ -97,7 +97,7 @@ fi
The first argument of PHP_NEW_EXTENSION describes the name of the
extension. The second names the source-code files. The third passes
$ext_shared which is set by PHP_ARG_ENABLE/WITH to PHP_NEW_EXTENSION.
Please use always PHP_ARG_ENABLE or PHP_ARG_WITH. Even if you do not
plan to distribute your module with PHP, these facilities allow you
to integrate your module easily into the main PHP module framework.
@@ -138,7 +138,7 @@ INSTALLING A SELF-CONTAINED EXTENSION
ADDING SHARED MODULE SUPPORT TO A MODULE
In order to be useful, a self-contained extension must be loadable
as a shared module. I will explain now how you can add shared module
as a shared module. I will explain now how you can add shared module
support to an existing module called foo.
1. In config.m4, use PHP_ARG_WITH/PHP_ARG_ENABLE. Then you will
@@ -167,4 +167,3 @@ PECL SITE CONFORMITY
This macros has to be used within your foo_module_entry to indicate the
extension version.
+5 -5
View File
@@ -28,7 +28,7 @@ The main functions are:
PHPAPI size_t php_stream_read(php_stream * stream, char * buf, size_t count);
PHPAPI size_t php_stream_write(php_stream * stream, const char * buf, size_t
count);
PHPAPI size_t php_stream_printf(php_stream * stream,
PHPAPI size_t php_stream_printf(php_stream * stream,
const char * fmt, ...);
PHPAPI int php_stream_eof(php_stream * stream);
PHPAPI int php_stream_getc(php_stream * stream);
@@ -63,7 +63,7 @@ Where:
file/URL, use this option to arrange for the stream
to be copied (if needed) into a stream that can
be seek()ed.
opened_path is used to return the path of the actual file opened,
but if you used STREAM_MUST_SEEK, may not be valid. You are
responsible for efree()ing opened_path. opened_path may be (and usually
@@ -95,7 +95,7 @@ PHPAPI php_stream *php_stream_sock_open_host(const char *host, unsigned short po
PHPAPI php_stream *php_stream_sock_open_unix(const char *path, int persistent,
struct timeval *timeout);
Open a UNIX domain socket.
Stream Utilities
================
@@ -246,7 +246,7 @@ PHPAPI php_stream * php_stream_fopen(const char * filename, const char * mode)
{
FILE * fp = fopen(filename, mode);
php_stream * ret;
if (fp) {
ret = php_stream_alloc(&php_stream_stdio_ops, fp, 0, 0, mode);
if (ret)
@@ -347,7 +347,7 @@ static size_t php_mysqlop_read(php_stream * stream, char * buf, size_t count)
else
return 0;
}
/* pull out some data from the stream and put it in buf */
... mysql_fetch_row(state->result) ...
/* we could do something strange, like format the data as XML here,
+1 -1
View File
@@ -128,7 +128,7 @@ How to create your PHP, PHP Documentation or PECL patch
-------------------------------------------------------
PHP and most PECL packages use Git for revision control. Some PECL
packages use Subversion (SVN) Read http://www.php.net/git.php for help
on using Git to get and build PHP source code. We recommend to look
on using Git to get and build PHP source code. We recommend to look
at our workflow on https://wiki.php.net/vcs/gitworkflow and our FAQ
https://wiki.php.net/vcs/gitfaq.
+8 -8
View File
@@ -9,7 +9,7 @@ it failed on your system without providing substantial backup information
on *why* the test failed on your special setup. Thank you :-)
[Testing Basics]
[Testing Basics]
----------------
The easiest way to test your PHP build is to run "make test" from the
command line after successfully compiling. This will run the complete
@@ -36,7 +36,7 @@ If you are running the run-tests.php script from the command line (as above)
you must set the TEST_PHP_EXECUTABLE environment variable to explicitly
select the PHP executable that is to be tested, that is, used to run the test scripts.
If you run the tests using make test, the PHP CLI and CGI executables are
If you run the tests using make test, the PHP CLI and CGI executables are
automatically set for you. "make test" executes "run-tests.php" script with the CLI binary. Some
test scripts such as session must be executed by CGI SAPI. Therefore,
you must build PHP with CGI SAPI to perform all tests.
@@ -62,7 +62,7 @@ from the source root and any subdirectories below. If there are files,
which have a "phpt" extension, "run-tests.php" looks at the sections
in these files, determines whether it should run it, by evaluating
the 'SKIP' section. If the test is eligible for execution, the 'FILE'
section is extracted into a ".php" file (with the same name besides
section is extracted into a ".php" file (with the same name besides
the extension) and gets executed.
When an argument is given or TESTS environment variable is set, the
GLOB is expanded by the shell and any file with extension "*.phpt" is
@@ -77,9 +77,9 @@ Examples:
[Test results]
--------------
Test results are printed to standard output. If there is a failed test,
Test results are printed to standard output. If there is a failed test,
the "run-tests.php" script saves the result, the expected result and the
code executed to the test script directory. For example, if
code executed to the test script directory. For example, if
ext/myext/tests/myext.phpt fails to pass, the following files are created:
ext/myext/tests/myext.php - actual test file executed
@@ -151,20 +151,20 @@ advised to test for non-zero, rather then a specific value.
[Creating new test files]
-------------------------
Writing test file is very easy if you are used to PHP.
Writing test file is very easy if you are used to PHP.
See the HOWTO at http://qa.php.net/write-test.php
[How to help us]
----------------
If you find bug in PHP, you can submit bug report AND test script
If you find bug in PHP, you can submit bug report AND test script
for us. You don't have to write complete script, just give us test
script with following format. Please test the script and make sure
you write the correct ACTUAL OUTPUT and EXPECTED OUTPUT before you
submit.
<?php
/*
/*
Bug #12345
substr() bug. Do not return expected string.
+8 -11
View File
@@ -1,13 +1,13 @@
[IMPORTANT NOTICE]
------------------
This is an addendum to README.TESTING with additional information
This is an addendum to README.TESTING with additional information
specific to server-tests.php.
server-tests.php is backward compatible with tests developed for
the original run-tests.php script. server-tests is *not* used by
'make test'. server-tests was developed to provide support for
testing PHP under it's primary environment, HTTP, and can run the
PHP tests under any of the SAPI modules that are direct executables,
PHP tests under any of the SAPI modules that are direct executables,
or are accessible via HTTP.
[New features]
@@ -25,7 +25,7 @@ or are accessible via HTTP.
can be configured to run test scripts through an HTTP server running
on localhost. localhost is required since either the web server must
alias a directory to the php source directory, or the test scripts
must be copied to a directory under the web server
must be copied to a directory under the web server
(see config options TEST_WEB_BASE_URL, TEST_BASE_PATH, and TEST_WEB_EXT)
* New sections supported for test files (see below)
@@ -49,7 +49,7 @@ Some (but not all!) examples of usage:
4. run tests over http, php sources have been aliased in web server
php server-tests.php -w -u http://localhost/test
5. run tests using configuration file
php server-tests.php -c /path/to/server-tests-config.php
@@ -59,10 +59,10 @@ Some (but not all!) examples of usage:
NOTE: configuration as described in README.TESTING still works.
[New Test Sections]
[New Test Sections]
----------------
In addition to the traditional test sections
(see http://qa.php.net/write-test.php), several new sections are available
In addition to the traditional test sections
(see http://qa.php.net/write-test.php), several new sections are available
under server-tests.
--POST--
@@ -78,7 +78,7 @@ in the test file.
Not used for anything, just a section for documenting the test
--ENV--
This section get's eval()'d to help build an environment for the
This section get's eval()'d to help build an environment for the
execution of the test. This can be used to change environment
vars that are used for CGI emulation, or simply to set env vars
for cli testing. A full example looks like:
@@ -132,6 +132,3 @@ regular expect sections. For example:
--EXPECTHEADERS--
Status: 404
+1 -2
View File
@@ -1,6 +1,5 @@
The Win32 Build System.
See http://wiki.php.net/internals/windows/stepbystepbuild
See https://wiki.php.net/internals/windows/stepbystepbuild_sdk_2
vim:tw=78:sw=1:ts=1:et
+1 -1
View File
@@ -12,7 +12,7 @@ enforced. It is implemented as a SAPI hook and is called from the
treat_data and post handler functions. To implement your own security
policy you will need to write a standard PHP extension. There is also
a powerful standard implementation in ext/filter that should suit most
peoples' needs. However, if you want to implement your own security
peoples' needs. However, if you want to implement your own security
policy, read on.
A simple implementation might look like the following. This stores the
-1
View File
@@ -37,4 +37,3 @@ Guidelines for contributors
- [README.GIT-RULES](/README.GIT-RULES)
- [README.MAILINGLIST_RULES](/README.MAILINGLIST_RULES)
- [README.RELEASE_PROCESS](/README.RELEASE_PROCESS)
-2
View File
@@ -1,5 +1,3 @@
AC_DEFUN([AM_SET_LIBTOOL_VARIABLE],[
LIBTOOL='$(SHELL) $(top_builddir)/libtool $1'
])
+2 -2
View File
@@ -5,7 +5,7 @@
#
# Written by Sascha Schumann
#
# $Id$
# $Id$
LT_TARGETS = ltmain.sh ltconfig
@@ -34,7 +34,7 @@ aclocal.m4: configure.ac acinclude.m4
aclocal
$(config_h_in): configure.ac
# explicitly remove target since autoheader does not seem to work
# explicitly remove target since autoheader does not seem to work
# correctly otherwise (timestamps are not updated)
@rm -f $@
autoheader
-1
View File
@@ -3,4 +3,3 @@
ADD_SOURCES("TSRM", "TSRM.c tsrm_strtok_r.c tsrm_win32.c");
ADD_FLAG("CFLAGS_BD_TSRM", "/D ZEND_ENABLE_STATIC_TSRMLS_CACHE=1");
+2 -2
View File
@@ -12,10 +12,10 @@ AH_TOP([
])
sinclude(tsrm.m4)
TSRM_BASIC_CHECKS
TSRM_THREADS_CHECKS
AM_PROG_LIBTOOL
if test "$enable_debug" != "yes"; then
AM_SET_LIBTOOL_VARIABLE([--silent])
-1
View File
@@ -194,4 +194,3 @@ esac
AC_LANG_POP
]) dnl end AC_DEFUN
+6 -6
View File
@@ -1,17 +1,17 @@
dnl Copyright (c) 1999, 2000 Sascha Schumann. All rights reserved.
dnl
dnl
dnl Redistribution and use in source and binary forms, with or without
dnl modification, are permitted provided that the following conditions
dnl are met:
dnl
dnl
dnl 1. Redistributions of source code must retain the above copyright
dnl notice, this list of conditions and the following disclaimer.
dnl
dnl
dnl 2. Redistributions in binary form must reproduce the above copyright
dnl notice, this list of conditions and the following disclaimer in
dnl the documentation and/or other materials provided with the
dnl distribution.
dnl
dnl
dnl THIS SOFTWARE IS PROVIDED BY SASCHA SCHUMANN ``AS IS'' AND ANY
dnl EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
dnl IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
@@ -97,7 +97,7 @@ dnl -Kthread UDK cc (UnixWare)
dnl -mt WorkShop cc (Solaris)
dnl -mthreads gcc (AIX)
dnl -pthread gcc (Linux, FreeBSD, NetBSD, OpenBSD)
dnl -pthreads gcc (Solaris)
dnl -pthreads gcc (Solaris)
dnl -qthreaded AIX cc V5
dnl -threads gcc (HP-UX)
dnl
@@ -117,7 +117,7 @@ else
AC_CACHE_CHECK(for pthreads_cflags,ac_cv_pthreads_cflags,[
ac_cv_pthreads_cflags=
if test "$pthreads_working" != "yes"; then
for flag in -kthread -pthread -pthreads -mthreads -Kthread -threads -mt -qthreaded; do
for flag in -kthread -pthread -pthreads -mthreads -Kthread -threads -mt -qthreaded; do
ac_save=$CFLAGS
CFLAGS="$CFLAGS $flag"
PTHREADS_CHECK_COMPILE
+4 -4
View File
@@ -1,6 +1,6 @@
m4_include([TSRM/m4/gethostbyname.m4])
dnl TSRM_CHECK_GCC_ARG(ARG, ACTION-IF-FOUND, ACTION-IF-NOT_FOUND)
dnl TSRM_CHECK_GCC_ARG(ARG, ACTION-IF-FOUND, ACTION-IF-NOT_FOUND)
AC_DEFUN([TSRM_CHECK_GCC_ARG],[
gcc_arg_name=[ac_cv_gcc_arg]translit($1,A-Z-,a-z_)
AC_CACHE_CHECK([whether $CC supports $1], [ac_cv_gcc_arg]translit($1,A-Z-,a-z_), [
@@ -75,12 +75,12 @@ AC_DEFUN([TSRM_CHECK_ST],[
sinclude(threads.m4)
AC_DEFUN([TSRM_CHECK_PTHREADS],[
PTHREADS_CHECK
if test "$beos_threads" = "1"; then
if test "$beos_threads" = "1"; then
AC_DEFINE(BETHREADS, 1, Whether to use native BeOS threads)
else
else
if test "$pthreads_working" != "yes"; then
AC_MSG_ERROR(Your system seems to lack POSIX threads.)
fi
+15 -8
View File
@@ -99,6 +99,13 @@ PHP 7.2 UPGRADE NOTES
from PHP 7.1 on 64-bit machines. This change was necessary to resolve a
modulo bias bug in the implementation.
- IMAP:
Starting with 7.1.25, rsh/ssh logins are disabled by default. Use
imap.enable_insecure_rsh if you want to enable them. Note that the IMAP
library does not filter mailbox names before passing them to rsh/ssh
command, thus passing untrusted data to this function with rsh/ssh enabled
is insecure.
========================================
2. New Features
========================================
@@ -180,7 +187,7 @@ PHP 8.0.
. The each() function has been deprecated, use a foreach loop instead.
. The $errcontext error handler argument has been deprecated. However, using
it does not trigger a deprecation warning for technical reasons.
- EXIF:
. The read_exif_data() alias has been deprecated, use exif_read_data() instead.
@@ -210,14 +217,14 @@ See also: https://wiki.php.net/rfc/deprecations_php_7_2
========================================
- Standard:
. password_hash() can generate Argon2i hashes when the algorithm is set to PASSWORD_ARGON2I.
When using PASSWORD_ARGON2I, the following cost factors may be set: 'memory_cost', 'time_cost',
and 'threads'. These cost factors will default to 'PASSWORD_ARGON2_DEFAULT_MEMORY_COST',
. password_hash() can generate Argon2i hashes when the algorithm is set to PASSWORD_ARGON2I.
When using PASSWORD_ARGON2I, the following cost factors may be set: 'memory_cost', 'time_cost',
and 'threads'. These cost factors will default to 'PASSWORD_ARGON2_DEFAULT_MEMORY_COST',
'PASSWORD_ARGON2_DEFAULT_TIME_COST', and 'PASSWORD_ARGON2_DEFAULT_THREADS' respectively if not set.
. password_verify() can verify Argon2i hashes.
. password_get_info() and password_needs_rehash() can accept Argon2i hashes.
. mail()/mb_send_mail() accept array $extra_header. Array parameter is checked against RFC 2822.
Array format is
Array format is
$extra_headers = [
'Header-Name' => 'Header value',
'Multiple' => ['One header', 'Another header'],
@@ -290,10 +297,10 @@ See also: https://wiki.php.net/rfc/deprecations_php_7_2
========================================
- EXIF:
. Added extended exif tag support for the following formats:
Samsung, DJI, Panasonic, Sony, Pentax, Minolta, Sigma/Foveon,
. Added extended exif tag support for the following formats:
Samsung, DJI, Panasonic, Sony, Pentax, Minolta, Sigma/Foveon,
AGFA, Kyocera, Ricoh & Epson.
. exif_read_data() and exif_thumbnail() now supports a passed streams as their
. exif_read_data() and exif_thumbnail() now supports a passed streams as their
first parameter.
- GD:
+1 -2
View File
@@ -31,7 +31,7 @@ PHP 7.2 INTERNALS UPGRADE NOTES
The internal randomness source on Windows switched to use CNG API.
c. nice() now have a Windows alternative that is implemented in win32/nice.c, using
SetPriorityClass(). See the implementation for more in-depth details. This also
SetPriorityClass(). See the implementation for more in-depth details. This also
defines HAVE_NICE.
d. ZEND_ACC_CLONE is removed, but was not used in previous versions
@@ -80,4 +80,3 @@ PHP 7.2 INTERNALS UPGRADE NOTES
- OpenSSL:
. Windows builds ship with OpenSSL 1.1 by default, lower versions are still supported with custom deps.
+12 -12
View File
@@ -1,25 +1,25 @@
--------------------------------------------------------------------
--------------------------------------------------------------------
The Zend Engine License, Version 2.00
Copyright (c) 1999-2006 Zend Technologies Ltd. All rights reserved.
--------------------------------------------------------------------
--------------------------------------------------------------------
Redistribution and use in source and binary forms, with or without
modification, is permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials provided
with the distribution.
3. The names "Zend" and "Zend Engine" must not be used to endorse
or promote products derived from this software without prior
permission from Zend Technologies Ltd. For written permission,
please contact license@zend.com.
please contact license@zend.com.
4. Zend Technologies Ltd. may publish revised and/or new versions
of the license from time to time. Each version will be given a
distinguishing version number.
@@ -40,9 +40,9 @@ are met:
software must display the following acknowledgment:
"The Zend Engine is freely available at http://www.zend.com"
THIS SOFTWARE IS PROVIDED BY ZEND TECHNOLOGIES LTD. ``AS IS'' AND
THIS SOFTWARE IS PROVIDED BY ZEND TECHNOLOGIES LTD. ``AS IS'' AND
ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ZEND
TECHNOLOGIES LTD. BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
@@ -53,4 +53,4 @@ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
--------------------------------------------------------------------
--------------------------------------------------------------------
-1
View File
@@ -53,4 +53,3 @@ depend:
zend_execute.lo: $(srcdir)/zend_execute.c
$(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(CPPFLAGS) $(INLINE_CFLAGS) -c $(srcdir)/zend_execute.c
+8 -9
View File
@@ -21,7 +21,7 @@ ZEND_VM_HANDLER(<OPCODE-NUMBER>, <OPCODE>, <OP1_TYPES>, <OP2_TYPES>)
<OPCODE-NUMBER> is a opcode number (0, 1, ...)
<OPCODE> is an opcode name (ZEN_NOP, ZEND_ADD, :)
<OP1_TYPES> & <OP2_TYPES> are masks for allowed operand op_types. Specializer
will generate code only for defined combination of types. You can use any
will generate code only for defined combination of types. You can use any
combination of the following op_types UNUSED, CONST, VAR, TMP and CV also
you can use ANY mask to disable specialization according operand's op_type.
<HANDLER'S CODE> is a handler's code itself. For most handlers it stills the
@@ -34,9 +34,9 @@ EXECUTE_DATA
execute_data
ZEND_VM_DISPATCH_TO_HANDLER(<OP>)
return <OP>_helper(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)
ZEND_VM_DISPATCH_TO_HELPER(<NAME>)
ZEND_VM_DISPATCH_TO_HELPER(<NAME>)
return <NAME>(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)
ZEND_VM_DISPATCH_TO_HELPER_EX(<NAME>,<PARAM>,<VAL>)
ZEND_VM_DISPATCH_TO_HELPER_EX(<NAME>,<PARAM>,<VAL>)
return <NAME>(<VAL>, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)
ZEND_VM_CONTINUE()
return 0
@@ -72,7 +72,7 @@ FREE_OP<X>_VAR_PTR()
FREE_VAR_PTR(free_op<X>)
Executor's helpers can be defined without parameters or with one parameter.
Executor's helpers can be defined without parameters or with one parameter.
This is done with the following constructs:
ZEND_VM_HELPER(<HELPER-NAME>, <OP1_TYPES>, <OP2_TYPES>)
@@ -86,13 +86,13 @@ ZEND_VM_HELPER_EX(<HELPER-NAME>, <OP1_TYPES>, <OP2_TYPES>, <PARAM_SPEC>)
}
Executor's code is generated by PHP script zend_vm_gen.php it uses zend_vm_def.h
and zend_vm_execute.skl as input and produces zend_vm_opcodes.h and
zend_vm_execute.h. The first file is a list of opcode definitions. It is
and zend_vm_execute.skl as input and produces zend_vm_opcodes.h and
zend_vm_execute.h. The first file is a list of opcode definitions. It is
included from zend_compile.h. The second one is an executor code itself. It is
included from zend_execute.c.
zend_vm_gen.php can produce different kind of executors. You can select
different opcode threading model using --with-vm-kind=CALL|SWITCH|GOTO. You can
zend_vm_gen.php can produce different kind of executors. You can select
different opcode threading model using --with-vm-kind=CALL|SWITCH|GOTO. You can
disable opcode specialization using --without-specializer. You can include or
exclude old executor together with specialized one using --without-old-executor.
At last you can debug executor using original zend_vm_def.h or generated file
@@ -105,4 +105,3 @@ Zend Engine II currently includes two executors during the build process, one
is the specialized version and the other is the old one non-specialized with
function handlers. By default Zend Engine II uses the specialized one but you
can switch to the old executor at runtime by calling zend_vm_use_old_executor().
+22 -22
View File
@@ -7,10 +7,10 @@ dnl
AC_DEFUN([LIBZEND_CHECK_INT_TYPE],[
AC_MSG_CHECKING(for $1)
AC_TRY_COMPILE([
#if HAVE_SYS_TYPES_H
#if HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
#if HAVE_INTTYPES_H
#if HAVE_INTTYPES_H
#include <inttypes.h>
#elif HAVE_STDINT_H
#include <stdint.h>
@@ -137,7 +137,7 @@ int main()
], [
AC_MSG_RESULT(no)
])
])
AC_DEFUN([LIBZEND_ENABLE_DEBUG],[
@@ -147,7 +147,7 @@ AC_ARG_ENABLE(debug,
ZEND_DEBUG=$enableval
],[
ZEND_DEBUG=no
])
])
])
@@ -158,10 +158,10 @@ AC_ARG_ENABLE(maintainer-zts,
ZEND_MAINTAINER_ZTS=$enableval
],[
ZEND_MAINTAINER_ZTS=no
])
])
AC_ARG_ENABLE(inline-optimization,
[ --disable-inline-optimization
[ --disable-inline-optimization
If building zend_execute.lo fails, try this switch],[
ZEND_INLINE_OPTIMIZATION=$enableval
],[
@@ -196,7 +196,7 @@ if test "$ZEND_MAINTAINER_ZTS" = "yes"; then
AC_DEFINE(ZTS,1,[ ])
CFLAGS="$CFLAGS -DZTS"
LIBZEND_CPLUSPLUS_CHECKS
fi
fi
changequote({,})
if test -n "$GCC" && test "$ZEND_INLINE_OPTIMIZATION" != "yes"; then
@@ -249,7 +249,7 @@ int main()
}
fp = fopen("conftest.zend", "w");
fprintf(fp, "%d %d\n", ZEND_MM_ALIGNMENT, zeros);
fprintf(fp, "%d %d\n", ZEND_MM_ALIGNMENT, zeros);
fclose(fp);
exit(0);
@@ -258,7 +258,7 @@ int main()
LIBZEND_MM_ALIGN=`cat conftest.zend | cut -d ' ' -f 1`
LIBZEND_MM_ALIGN_LOG2=`cat conftest.zend | cut -d ' ' -f 2`
AC_DEFINE_UNQUOTED(ZEND_MM_ALIGNMENT, $LIBZEND_MM_ALIGN, [ ])
AC_DEFINE_UNQUOTED(ZEND_MM_ALIGNMENT_LOG2, $LIBZEND_MM_ALIGN_LOG2, [ ])
AC_DEFINE_UNQUOTED(ZEND_MM_ALIGNMENT_LOG2, $LIBZEND_MM_ALIGN_LOG2, [ ])
], [], [
dnl cross-compile needs something here
LIBZEND_MM_ALIGN=8
@@ -374,7 +374,7 @@ AC_ARG_ENABLE(zend-signals,
ZEND_SIGNALS=$enableval
],[
ZEND_SIGNALS=yes
])
])
AC_CHECK_FUNC(sigaction, [
AC_DEFINE(HAVE_SIGACTION, 1, [Whether sigaction() is available])
@@ -395,24 +395,24 @@ AC_DEFUN([LIBZEND_CPLUSPLUS_CHECKS],[
])
AC_MSG_CHECKING(whether /dev/urandom exists)
if test -r "/dev/urandom" && test -c "/dev/urandom"; then
AC_MSG_CHECKING(whether /dev/urandom exists)
if test -r "/dev/urandom" && test -c "/dev/urandom"; then
AC_DEFINE([HAVE_DEV_URANDOM], 1, [Define if the target system has /dev/urandom device])
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
AC_MSG_CHECKING(whether /dev/arandom exists)
if test -r "/dev/arandom" && test -c "/dev/arandom"; then
AC_MSG_CHECKING(whether /dev/arandom exists)
if test -r "/dev/arandom" && test -c "/dev/arandom"; then
AC_DEFINE([HAVE_DEV_ARANDOM], 1, [Define if the target system has /dev/arandom device])
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
AC_ARG_ENABLE(gcc-global-regs,
[ --disable-gcc-global-regs
[ --disable-gcc-global-regs
whether to enable GCC global register variables],[
ZEND_GCC_GLOBAL_REGS=$enableval
],[
+2 -2
View File
@@ -7,7 +7,7 @@ AC_DEFUN([LIBZEND_BISON_CHECK],[
# min: 2.4 (i.e. 204, major * 100 + minor for easier comparison)
bison_version_min="204"
# non-working versions, e.g. "3.0 3.2";
# remove "none" when introducing the first incompatible bison version an
# remove "none" when introducing the first incompatible bison version an
# separate any following additions by spaces
bison_version_exclude=""
@@ -139,7 +139,7 @@ AC_DEFUN([ZEND_CHECK_FLOAT_PRECISION],[
else
AC_MSG_RESULT(no)
fi
AC_MSG_CHECKING([for usable fpsetprec])
AC_TRY_LINK([
#include <machine/ieeefp.h>
+5 -5
View File
@@ -5,18 +5,18 @@ if (function_exists("date_default_timezone_set")) {
function simple() {
$a = 0;
for ($i = 0; $i < 1000000; $i++)
for ($i = 0; $i < 1000000; $i++)
$a++;
$thisisanotherlongname = 0;
for ($thisisalongname = 0; $thisisalongname < 1000000; $thisisalongname++)
for ($thisisalongname = 0; $thisisalongname < 1000000; $thisisalongname++)
$thisisanotherlongname++;
}
/****/
function simplecall() {
for ($i = 0; $i < 1000000; $i++)
for ($i = 0; $i < 1000000; $i++)
strlen("hallo");
}
@@ -26,14 +26,14 @@ function hallo($a) {
}
function simpleucall() {
for ($i = 0; $i < 1000000; $i++)
for ($i = 0; $i < 1000000; $i++)
hallo("hallo");
}
/****/
function simpleudcall() {
for ($i = 0; $i < 1000000; $i++)
for ($i = 0; $i < 1000000; $i++)
hallo2("hallo");
}
+2 -2
View File
@@ -5,7 +5,7 @@
#
# Written by Sascha Schumann
#
# $Id$
# $Id$
LT_TARGETS = ltmain.sh ltconfig
@@ -34,7 +34,7 @@ aclocal.m4: configure.ac acinclude.m4
aclocal
$(config_h_in): configure.ac
# explicitly remove target since autoheader does not seem to work
# explicitly remove target since autoheader does not seem to work
# correctly otherwise (timestamps are not updated)
@rm -f $@
autoheader
-1
View File
@@ -30,4 +30,3 @@ if cmp configure.old configure > /dev/null 2>&1; then
else
echo "buildconf: created or modified ${1}configure"
fi
+3 -3
View File
@@ -60,7 +60,7 @@ int zend_sprintf(char *buffer, const char *format, ...);
#include <math.h>
#ifndef zend_isnan
#if HAVE_DECL_ISNAN
#if HAVE_DECL_ISNAN && (!defined(__cplusplus) || __cplusplus < 201103L)
#define zend_isnan(a) isnan(a)
#elif defined(HAVE_FPCLASS)
#define zend_isnan(a) ((fpclass(a) == FP_SNAN) || (fpclass(a) == FP_QNAN))
@@ -69,7 +69,7 @@ int zend_sprintf(char *buffer, const char *format, ...);
#endif
#endif
#if HAVE_DECL_ISINF
#if HAVE_DECL_ISINF && (!defined(__cplusplus) || __cplusplus < 201103L)
#define zend_isinf(a) isinf(a)
#elif defined(INFINITY)
/* Might not work, but is required by ISO C99 */
@@ -80,7 +80,7 @@ int zend_sprintf(char *buffer, const char *format, ...);
#define zend_isinf(a) 0
#endif
#if HAVE_DECL_ISFINITE
#if HAVE_DECL_ISFINITE && (!defined(__cplusplus) || __cplusplus < 201103L)
#define zend_finite(a) isfinite(a)
#elif defined(HAVE_FINITE)
#define zend_finite(a) finite(a)
+3 -3
View File
@@ -4,12 +4,12 @@ function hallo() {
}
function simpleucall($n) {
for ($i = 0; $i < $n; $i++)
for ($i = 0; $i < $n; $i++)
hallo();
}
function simpleudcall($n) {
for ($i = 0; $i < $n; $i++)
for ($i = 0; $i < $n; $i++)
hallo2();
}
@@ -17,7 +17,7 @@ function hallo2() {
}
function simpleicall($n) {
for ($i = 0; $i < $n; $i++)
for ($i = 0; $i < $n; $i++)
func_num_args();
}
+1 -1
View File
@@ -44,7 +44,7 @@ var_dump(func_num_args());
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
int(0)
int(1)
Exception: Too few arguments to function test2(), 0 passed in %s001.php on line 18 and exactly 1 expected
+1 -1
View File
@@ -50,7 +50,7 @@ var_dump(func_get_arg(1));
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Warning: func_get_arg(): The argument number should be >= 0 in %s on line %d
bool(false)
+1 -1
View File
@@ -44,7 +44,7 @@ var_dump(func_get_args());
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
array(0) {
}
array(1) {
+1 -1
View File
@@ -12,7 +12,7 @@ var_dump(strncmp("qwerty", "qwerty123", 7));
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Warning: strncmp() expects exactly 3 parameters, 2 given in %s on line %d
NULL
int(0)
+1 -1
View File
@@ -14,7 +14,7 @@ var_dump(strcasecmp("01", "01"));
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Warning: strcasecmp() expects exactly 2 parameters, 1 given in %s on line %d
NULL
int(0)
+1 -1
View File
@@ -15,7 +15,7 @@ var_dump(strncasecmp("01", "01", 1000));
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Warning: strncasecmp() expects exactly 3 parameters, 1 given in %s on line %d
NULL
+1 -1
View File
@@ -21,7 +21,7 @@ var_dump(each($a));
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Warning: each() expects exactly 1 parameter, 0 given in %s on line %d
NULL
+1 -1
View File
@@ -22,7 +22,7 @@ var_dump(constant("test const"));
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Warning: define() expects at least 2 parameters, 0 given in %s on line %d
NULL
+1 -1
View File
@@ -35,7 +35,7 @@ $f1->testNull();
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Deprecated: Non-static method foo::bar() should not be called statically in %s on line %d
string(3) "foo"
+1 -1
View File
@@ -41,7 +41,7 @@ var_dump(get_parent_class(1));
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
bool(false)
bool(false)
string(3) "foo"
+1 -1
View File
@@ -52,7 +52,7 @@ $bar->test();
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Warning: property_exists() expects exactly 2 parameters, 0 given in %s on line %d
NULL
+1 -1
View File
@@ -18,7 +18,7 @@ var_dump(class_exists("stdClass"));
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Warning: class_exists() expects at least 1 parameter, 0 given in %s on line %d
NULL
bool(false)
+1 -1
View File
@@ -18,7 +18,7 @@ var_dump(interface_exists("stdClass"));
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Warning: interface_exists() expects at least 1 parameter, 0 given in %s on line %d
NULL
bool(false)
+1 -1
View File
@@ -20,7 +20,7 @@ var_dump(get_included_files());
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
array(1) {
[0]=>
string(%d) "%s"
+1 -1
View File
@@ -13,7 +13,7 @@ var_dump(trigger_error("error", E_USER_DEPRECATED));
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Warning: trigger_error() expects at least 1 parameter, 0 given in %s on line %d
NULL
+2 -2
View File
@@ -3,10 +3,10 @@ isset() with object properties when operating on non-object
--FILE--
<?php
$foo = NULL;
$foo = NULL;
isset($foo->bar->bar);
echo "Done\n";
?>
--EXPECT--
--EXPECT--
Done
+1 -1
View File
@@ -43,7 +43,7 @@ var_dump(count(get_extension_funcs("zend")));
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Warning: get_resource_type() expects exactly 1 parameter, 0 given in %s on line %d
NULL
+1 -1
View File
@@ -17,7 +17,7 @@ var_dump(constant("TEST_CONST2"));
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Warning: constant() expects exactly 1 parameter, 0 given in %s on line %d
NULL
+52 -52
View File
@@ -16,7 +16,7 @@ echo "*** Testing unset(), empty() & isset() with scalar variables ***\n";
// testing scalar variables
$scalar_variables = array(
0,
0,
1,
+1
-1,
@@ -52,23 +52,23 @@ foreach ($scalar_variables as $scalar_var) {
echo "-- Iteration $loop_counter --\n"; $loop_counter++;
// checking with isset before unsetting, expected: bool(true)
var_dump( isset($scalar_var) );
var_dump( isset($scalar_var, $set_var) );
var_dump( isset($scalar_var) );
var_dump( isset($scalar_var, $set_var) );
// checking if the var is empty, expected: bool(false) on most
// except "", 0, "0", NULL, FALSE
var_dump( empty($scalar_var) );
var_dump( empty($scalar_var) );
// destroy the variable using unset
unset( $scalar_var );
// dump and see if its destroyed, expcted: NULL
var_dump( $scalar_var );
unset( $scalar_var );
// dump and see if its destroyed, expcted: NULL
var_dump( $scalar_var );
// check using isset to see if unset, expected: bool(false)
var_dump( isset($scalar_var) );
var_dump( isset($scalar_var, $set_var) );
var_dump( isset($scalar_var) );
var_dump( isset($scalar_var, $set_var) );
// empty to check if empty, expecting bool(true)
var_dump( empty($scalar_var) );
var_dump( empty($scalar_var) );
// isset() with two args, one arg only unset, expected: bool(false)
var_dump( isset($scalar_var, $set_var) );
@@ -90,36 +90,36 @@ $array_variables = array(
array(1 => "One", 2 => "two"),
array("Name" => "Jack", "Age" => "30"),
array(1,2, "One" => "1", 2 => "two", ""=>"empty", "" => '')
);
);
$outer_loop_counter = 1;
foreach ($array_variables as $array_var) {
echo "--- Outerloop Iteration $outer_loop_counter ---\n";
// check the isset and unset on non existing key
$var = 1; // a var which is defined
// try to unset the element which is non-existent
unset($array_var['non_existent']);
unset($array_var['non_existent']);
// check using isset() & empty() on a non_existent element in the array
var_dump( isset($array_var['non_existent']) );
var_dump( isset($array_var['non_existent'], $var) );
var_dump( isset($array_var['non_existent'], $array_var['none']) );
var_dump( empty($array_var['non_existent']) );
// testing empty and isset on arrays
// testing empty and isset on arrays
var_dump( empty($array_var) ); // expecting bool(false), except: array(), which is considered empty
var_dump( isset($array_var) ); // expecting bool(true), except: array(), which is not set
// get the keys of the $array_var
// get the keys of the $array_var
$keys = array_keys($array_var);
// unset each element in the array and see the working of unset, isset & empty
$inner_loop_counter = 1;
foreach ($keys as $key_value) {
echo "-- Innerloop Iteration $inner_loop_counter of Outerloop Iteration $outer_loop_counter --\n";
echo "-- Innerloop Iteration $inner_loop_counter of Outerloop Iteration $outer_loop_counter --\n";
$inner_loop_counter++;
// unset the element
unset($array_var[$key_value]);
unset($array_var[$key_value]);
// dump the array after element was unset
var_dump($array_var);
// check using isset for the element that was unset
@@ -127,10 +127,10 @@ foreach ($array_variables as $array_var) {
// calling isset with more args
var_dump( isset($array_var[$key_val], $array_var) ); //expected: bool(false)
// calling empty, expected bool(true)
// calling empty, expected bool(true)
var_dump( empty($array_var[$key_val]) );
// dump the array to see that that array did not get modified
// dump the array to see that that array did not get modified
// because of using isset, empty and unset on its element
var_dump($array_var);
}
@@ -144,7 +144,7 @@ foreach ($array_variables as $array_var) {
// use isset to see that array is not set
var_dump( isset($array_var) ); //expected: bool(false)
var_dump( isset($array_var, $array_var[$key_val]) ); // expected: bool(false)
// empty() to see if the array is empty
var_dump( empty($array_var) ); // expected: bool(true)
}
@@ -183,12 +183,12 @@ foreach ($resources as $resource) {
unset($temp_var);
// now the isset() with both the args as unset
var_dump( isset($resource, $temp_var) ); // expected: bool(false);
// dump the resource to see if there any effect on it
// dump the resource to see if there any effect on it
var_dump($resource);
}
// unset and dump the array containing all the resources to see that
// unset works correctly
// unset works correctly
unset($resources);
var_dump($resources);
var_dump( isset($resources) ); //expected: bool(false)
@@ -200,12 +200,12 @@ class Point
var $x;
var $y;
var $lable;
function __construct($x, $y) {
$this->x = $x;
$this->y = $y;
}
function setLable($lable) {
$this->lable = $lable;
}
@@ -215,8 +215,8 @@ class Point
}
$point1 = new Point(30,40);
// use unset/empty/isset to check the object
var_dump($point1); // dump the object
// use unset/empty/isset to check the object
var_dump($point1); // dump the object
// check the object and member that is not set
var_dump( isset($point1) ); // expected: bool(true)
@@ -229,7 +229,7 @@ $point1->setLable("Point1");
var_dump( isset($point1->$lable) ); //expected: bool(true)
var_dump( empty($point1->$lable) ); //expected: bool(false)
// dump the object to see that obj was not harmed
// dump the object to see that obj was not harmed
// because of the usage of the isset & empty
var_dump($point1);
@@ -270,36 +270,36 @@ var_dump($point2);
/* testing variation in operation for isset(), empty() & unset().
Note: Most of the variation for function unset() is testing by a
set of testcases named "Zend/tests/unset_cv??.phpt", only
set of testcases named "Zend/tests/unset_cv??.phpt", only
variation not tested are attempted here */
echo "\n*** Testing possible variation in operation for isset(), empty() & unset() ***\n";
/* unset() variation1: checking unset on static variable inside a function.
/* unset() variation1: checking unset on static variable inside a function.
* unset() destroys the variable only in the context of the rest of a function
* Following calls will restore the previous value of a variable.
*/
echo "\n** Testing unset() variation 1: unset on static variable inside a function **\n";
function test_unset1() {
static $static_var;
// increment the value of the static. this change is in function context
$static_var ++;
echo "value of static_var before unset: $static_var\n";
// check using isset and empty
echo "value of static_var before unset: $static_var\n";
// check using isset and empty
var_dump( isset($static_var) );
var_dump( empty($static_var) );
// unset the static var
unset($static_var);
echo "value of static_var after unset: $static_var\n";
// check using isset and empty
echo "value of static_var after unset: $static_var\n";
// check using isset and empty
var_dump( isset($static_var) );
var_dump( empty($static_var) );
// assign a value to static var
$static_var = 20;
echo "value of static_var after new assignment: $static_var\n";
echo "value of static_var after new assignment: $static_var\n";
}
// call the functiont
test_unset1();
@@ -308,10 +308,10 @@ test_unset1();
echo "\n** Testing unset() variation 2: unset on a variable passed by ref. inside of a function **\n";
/* unset() variation2: Pass by reference
* If a variable that is PASSED BY REFERENCE is unset() inside of a function,
/* unset() variation2: Pass by reference
* If a variable that is PASSED BY REFERENCE is unset() inside of a function,
* only the local variable is destroyed. The variable in the calling environment
* will retain the same value as before unset() was called.
* will retain the same value as before unset() was called.
*/
function test_unset2( &$ref_val ) {
// unset the variable passed
@@ -329,7 +329,7 @@ var_dump($value);
test_unset2($value);
var_dump($value);
echo "\n** Testing unset() variation 3: unset on a global variable inside of a function **\n";
/* unset() variation2: unset on a global variable inside a function
* If a globalized variable is unset() inside of a function, only the
@@ -340,17 +340,17 @@ $global_var = 10;
function test_unset3() {
global $global_var;
// check the $global_var using isset and empty
var_dump( isset($global_var) );
var_dump( empty($global_var) );
// check the $global_var using isset and empty
var_dump( isset($global_var) );
var_dump( empty($global_var) );
// unset the global var
unset($global_var);
// check the $global_var using isset and empty
var_dump( isset($global_var) );
var_dump( empty($global_var) );
// check the $global_var using isset and empty
var_dump( isset($global_var) );
var_dump( empty($global_var) );
}
var_dump($global_var);
+1 -1
View File
@@ -19,7 +19,7 @@ foo(1,2);
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Warning: func_get_arg() expects exactly 1 parameter, 3 given in %s on line %d
NULL
+4 -4
View File
@@ -7,7 +7,7 @@ class foo {
public $test = 0;
private $test_2 = 1;
protected $test_3 = 2;
public function bar() {
try {
throw new Exception('foo');
@@ -15,13 +15,13 @@ class foo {
var_dump($this);
}
$this->baz();
$this->baz();
}
public function baz() {
foreach ($this as $k => $v) {
printf("'%s' => '%s'\n", $k, $v);
}
}
print "ok\n";
}
}
+1 -1
View File
@@ -1,7 +1,7 @@
--TEST--
Testing array with '[]' passed as argument by value
--FILE--
<?php
<?php
function test($var) { }
test($arr[]);
+1 -1
View File
@@ -1,7 +1,7 @@
--TEST--
Testing array with '[]' passed as argument by reference
--FILE--
<?php
<?php
function test(&$var) { }
test($arr[]);
+1 -2
View File
@@ -1,7 +1,7 @@
--TEST--
Using undefined multidimensional array
--FILE--
<?php
<?php
$arr[1][2][3][4][5];
@@ -17,7 +17,6 @@ $arr[][]->bar = 2;
?>
--EXPECTF--
Notice: Undefined variable: arr in %s on line %d
Notice: Undefined variable: arr in %s on line %d
+1 -1
View File
@@ -1,7 +1,7 @@
--TEST--
Testing multiples 'default:' in switch
--FILE--
<?php
<?php
switch (1) {
case 2:
+14 -14
View File
@@ -649,7 +649,7 @@ try {
var_dump($e->getPrevious() === NULL);
var_dump($e->getFile() === __FILE__);
var_dump($e->getTraceAsString() === EXCEPTION_TRACE_AS_STRING_MSG);
}
}
}
try {
@@ -665,7 +665,7 @@ try {
var_dump($e->getPrevious() === NULL);
var_dump($e->getFile() === __FILE__);
var_dump($e->getTraceAsString() === EXCEPTION_TRACE_AS_STRING_MSG);
}
}
}
try {
@@ -681,7 +681,7 @@ try {
var_dump($e->getPrevious() === NULL);
var_dump($e->getFile() === __FILE__);
var_dump($e->getTraceAsString() === EXCEPTION_TRACE_AS_STRING_MSG);
}
}
}
@@ -698,7 +698,7 @@ try {
var_dump($e->getPrevious() === NULL);
var_dump($e->getFile() === __FILE__);
var_dump($e->getTraceAsString() === EXCEPTION_TRACE_AS_STRING_MSG);
}
}
}
try {
@@ -714,7 +714,7 @@ try {
var_dump($e->getPrevious() === NULL);
var_dump($e->getFile() === __FILE__);
var_dump($e->getTraceAsString() === EXCEPTION_TRACE_AS_STRING_MSG);
}
}
}
try {
@@ -730,7 +730,7 @@ try {
var_dump($e->getPrevious() === NULL);
var_dump($e->getFile() === __FILE__);
var_dump($e->getTraceAsString() === EXCEPTION_TRACE_AS_STRING_MSG);
}
}
}
try {
@@ -746,7 +746,7 @@ try {
var_dump($e->getPrevious() === NULL);
var_dump($e->getFile() === __FILE__);
var_dump($e->getTraceAsString() === EXCEPTION_TRACE_AS_STRING_MSG);
}
}
}
try {
@@ -762,7 +762,7 @@ try {
var_dump($e->getPrevious() === NULL);
var_dump($e->getFile() === __FILE__);
var_dump($e->getTraceAsString() === EXCEPTION_TRACE_AS_STRING_MSG);
}
}
}
try {
@@ -778,7 +778,7 @@ try {
var_dump($e->getPrevious() === NULL);
var_dump($e->getFile() === __FILE__);
var_dump($e->getTraceAsString() === EXCEPTION_TRACE_AS_STRING_MSG);
}
}
}
try {
@@ -794,7 +794,7 @@ try {
var_dump($e->getPrevious() === NULL);
var_dump($e->getFile() === __FILE__);
var_dump($e->getTraceAsString() === EXCEPTION_TRACE_AS_STRING_MSG);
}
}
}
try {
@@ -810,7 +810,7 @@ try {
var_dump($e->getPrevious() === NULL);
var_dump($e->getFile() === __FILE__);
var_dump($e->getTraceAsString() === EXCEPTION_TRACE_AS_STRING_MSG);
}
}
}
try {
@@ -826,7 +826,7 @@ try {
var_dump($e->getPrevious() === NULL);
var_dump($e->getFile() === __FILE__);
var_dump($e->getTraceAsString() === EXCEPTION_TRACE_AS_STRING_MSG);
}
}
}
try {
@@ -842,7 +842,7 @@ try {
var_dump($e->getPrevious() === NULL);
var_dump($e->getFile() === __FILE__);
var_dump($e->getTraceAsString() === EXCEPTION_TRACE_AS_STRING_MSG);
}
}
}
try {
@@ -858,7 +858,7 @@ try {
var_dump($e->getPrevious() === NULL);
var_dump($e->getFile() === __FILE__);
var_dump($e->getTraceAsString() === EXCEPTION_TRACE_AS_STRING_MSG);
}
}
}
?>
-1
View File
@@ -9,5 +9,4 @@ abstract class TestClass
?>
===DONE===
--EXPECTF--
===DONE===
+1 -1
View File
@@ -8,5 +8,5 @@ abstract class B extends A { abstract function bar($x); }
echo "DONE";
?>
--EXPECT--
--EXPECT--
DONE
+1 -1
View File
@@ -8,5 +8,5 @@ abstract class B extends A { abstract function bar($x, $y = 0); }
echo "DONE";
?>
--EXPECT--
--EXPECT--
DONE
+1 -1
View File
@@ -8,5 +8,5 @@ abstract class B extends A { abstract function bar($x); }
echo "DONE";
?>
--EXPECTF--
--EXPECTF--
Fatal error: Declaration of B::bar($x) must be compatible with A::bar($x, $y = 0) in %s
+1 -1
View File
@@ -10,5 +10,5 @@ class test {
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Fatal error: Multiple access type modifiers are not allowed in %s on line %d
+1 -1
View File
@@ -9,5 +9,5 @@ class test {
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Fatal error: Multiple access type modifiers are not allowed in %s on line %d
+1 -1
View File
@@ -9,5 +9,5 @@ final final class test {
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Fatal error: Multiple final modifiers are not allowed in %s on line %d
+1 -1
View File
@@ -10,5 +10,5 @@ class test {
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Fatal error: Multiple abstract modifiers are not allowed in %s on line %d
+1 -1
View File
@@ -10,5 +10,5 @@ class test {
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Fatal error: Multiple final modifiers are not allowed in %s on line %d
+1 -1
View File
@@ -10,5 +10,5 @@ class test {
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Fatal error: Multiple static modifiers are not allowed in %s on line %d
+1 -1
View File
@@ -9,5 +9,5 @@ class test {
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Fatal error: Cannot use the final modifier on an abstract class member in %s on line %d
+1 -1
View File
@@ -21,7 +21,7 @@ abstract class b extends a {
class c extends b {
public function __construct() {
$this->test();
}
}
}
new c;
+1 -1
View File
@@ -32,7 +32,7 @@ echo $a->func1(),"\n";
echo $a->func2(),"\n";
?>
--EXPECTF--
--EXPECTF--
var1 value
var2 value
in func1
+1 -1
View File
@@ -29,7 +29,7 @@ var_dump($c);
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
array(3) {
[0]=>
int(1)
+1 -1
View File
@@ -19,7 +19,7 @@ var_dump($c);
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Notice: Object of class stdClass could not be converted to int in %sadd_002.php on line %d
Exception: Unsupported operand types
+2 -2
View File
@@ -1,5 +1,5 @@
--TEST--
adding arrays to objects
adding arrays to objects
--FILE--
<?php
@@ -19,7 +19,7 @@ var_dump($c);
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Notice: Object of class stdClass could not be converted to int in %sadd_003.php on line %d
Exception: Unsupported operand types
+1 -1
View File
@@ -16,7 +16,7 @@ var_dump($c);
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Exception: Unsupported operand types
Fatal error: Uncaught Error: Unsupported operand types in %s:%d
+1 -1
View File
@@ -16,7 +16,7 @@ var_dump($c);
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
float(2834756759.1231)
float(2834756759.1231)
Done
+1 -2
View File
@@ -37,8 +37,7 @@ var_dump($c);
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Warning: A non-numeric value encountered in %s on line %d
int(75636)
+2 -3
View File
@@ -1,5 +1,5 @@
--TEST--
adding strings to arrays
adding strings to arrays
--FILE--
<?php
@@ -18,8 +18,7 @@ var_dump($c);
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
Warning: A non-numeric value encountered in %s on line %d
Exception: Unsupported operand types
+1 -1
View File
@@ -30,7 +30,7 @@ var_dump($s);
echo "Done\n";
?>
--EXPECTF--
--EXPECTF--
string(3) "020"
string(4) "pead"
string(4) "pead"
-2
View File
@@ -6,5 +6,3 @@ var_dump(new class{});
--EXPECTF--
object(class@%s)#%d (0) {
}
-1
View File
@@ -18,4 +18,3 @@ var_dump($a instanceof A, $a instanceof B);
--EXPECTF--
bool(true)
bool(true)
-1
View File
@@ -51,4 +51,3 @@ object(class@%s)#1 (1) {
["i"]=>
int(10)
}
-1
View File
@@ -12,4 +12,3 @@ namespace {
--EXPECTF--
object(class@%s)#1 (0) {
}
-1
View File
@@ -20,4 +20,3 @@ namespace lone {
--EXPECTF--
object(class@%s)#2 (0) {
}
+2 -2
View File
@@ -1,12 +1,12 @@
--TEST--
Testing calls to anonymous function
--FILE--
<?php
<?php
for ($i = 0; $i < 10; $i++) {
$a = create_function('', 'return '. $i .';');
var_dump($a());
$b = "\0lambda_". ($i + 1);
var_dump($b());
}
+1 -1
View File
@@ -1,7 +1,7 @@
--TEST--
Testing anonymous function return as array key and accessing $GLOBALS
--FILE--
<?php
<?php
$test = create_function('$v', 'return $v;');
+1 -1
View File
@@ -1,7 +1,7 @@
--TEST--
Using throw $var with anonymous function return
--FILE--
<?php
<?php
try {
$a = create_function('', 'return new Exception("test");');
+2 -2
View File
@@ -4,12 +4,12 @@ Bug #55719 (Argument restriction should come with a more specific error message)
<?php
Class Base {
public function &test($foo, array $bar, $option = NULL, $extra = "lllllllllllllllllllllllllllllllllllllllllllllllllll") {
}
}
}
class Sub extends Base {
public function &test() {
}
}
}
?>
--EXPECTF--
Loaded 100 of 10024 files, more files were not shown because too many files have changed in this diff. Show more