1
0
mirror of https://github.com/php/php-src.git synced 2026-04-16 04:21:18 +02:00
Commit Graph

108570 Commits

Author SHA1 Message Date
Dmitry Stogov
cd9f0a22fc Perform run-time binding reusing HashTable bucket (without new bucket insertion). 2018-08-29 00:35:07 +03:00
Peter Kokot
409b5133cc Change some permissions from 755 to 644
This patch syncs file permissions accross the PHP source code files
since these don't need to be executable.
2018-08-28 23:26:49 +02:00
Dmitry Stogov
002aa30786 Added check for "user" method 2018-08-28 23:56:12 +03:00
Dmitry Stogov
684354be72 Removed incorrect efree() (run_time_cache(s) are usually allocated in CG(arena)). 2018-08-28 17:46:26 +03:00
Anatol Belski
8b4b41696e Merge branch 'PHP-7.3'
* PHP-7.3:
  Fixed bug #76803 ftruncate changes file pointer
2018-08-28 15:43:34 +02:00
Anatol Belski
7728160784 Fixed bug #76803 ftruncate changes file pointer 2018-08-28 15:42:39 +02:00
Christoph M. Becker
95178b19b2 Merge branch 'PHP-7.3'
* PHP-7.3:
  Fix SKIPIF conditions
2018-08-28 14:02:44 +02:00
Christoph M. Becker
441b6a6f5e Fix SKIPIF conditions
The test calls `mb_convert_encoding()` and as such requires the
mbstring extension.
2018-08-28 14:02:11 +02:00
Christoph M. Becker
c5eee032f4 Merge branch 'PHP-7.3' 2018-08-28 12:25:00 +02:00
Christoph M. Becker
ce201df40f [ci skip] Update NEWS wrt. php-7.3.0beta3 tagging 2018-08-28 12:22:57 +02:00
Dmitry Stogov
4151a3fa64 Revert "Removed redundand code"
This reverts commit 57e2b7d53b.
2018-08-28 11:51:08 +03:00
Remi Collet
dff0d81ce6 Merge branch 'PHP-7.3'
* PHP-7.3:
  bump to 7.2.11-dev
2018-08-28 10:19:24 +02:00
Remi Collet
584ffa5f6e Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  bump to 7.2.11-dev
2018-08-28 10:19:08 +02:00
Remi Collet
7353dae815 bump to 7.2.11-dev 2018-08-28 10:17:33 +02:00
Dmitry Stogov
57e2b7d53b Removed redundand code 2018-08-28 11:03:17 +03:00
Jakub Zelenka
39edd38851 Merge branch 'PHP-7.3' 2018-08-27 15:53:13 +01:00
Jakub Zelenka
014b1b3aad Store zlog stream in each child so it can be reused
This change results in using the same buffer for multiple
stdio events which should fix inconsistencies of handling
messages that are not ended with a new line and possibly
very long messages that are split to multiple events.
2018-08-27 14:58:39 +01:00
Dmitry Stogov
2fbfdde1b6 Cleanup class linking 2018-08-27 16:40:25 +03:00
Dmitry Stogov
ea9628936f Move zend_verify_abstract_class() into zend_inheritance.c 2018-08-27 12:56:17 +03:00
Dmitry Stogov
02eded868c Avoid function copying 2018-08-27 12:47:32 +03:00
Anatol Belski
e42e8b1051 Refactor stat implementation
- move relevant parts into win32
- general cleanup
- use Windows API and fallback to POSIX
- improve filetime to timestamp conversion
- improve stat/fsat
- handle ino by using file index
- handle st_dev by using volume serial number

The inode implementation is based on file indexes from NTFS. On 32-bit,
fake inodes are shown, that may lead to unexpeted results. 64-bit
implementation is most reliable.
2018-08-26 22:30:06 +02:00
Christoph M. Becker
2dbd21c12f Merge branch 'PHP-7.3'
* PHP-7.3:
  Fix #68180: iconv_mime_decode can return extra characters in a header
2018-08-26 13:24:36 +02:00
Christoph M. Becker
4d6b0b5031 Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Fix #68180: iconv_mime_decode can return extra characters in a header
2018-08-26 13:23:51 +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
0163fd00ba Merge branch 'PHP-7.3'
* PHP-7.3:
  Fix #60494: iconv_mime_decode does ignore special characters
2018-08-25 17:52:44 +02:00
Christoph M. Becker
b5afc99afb Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Fix #60494: iconv_mime_decode does ignore special characters
2018-08-25 17:52:16 +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
1d0f6b22a8 Merge branch 'PHP-7.3'
* PHP-7.3:
  Fix #63839: iconv_mime_decode_headers function is skipping headers
2018-08-25 14:54:52 +02:00
Christoph M. Becker
065eee16b5 Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Fix #63839: iconv_mime_decode_headers function is skipping headers
2018-08-25 14:54:32 +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
ac4da17f79 Merge branch 'PHP-7.3'
* PHP-7.3:
  Fix #55146: iconv_mime_decode_headers() skips some headers
2018-08-25 14:43:35 +02:00
Christoph M. Becker
50fec3be0e Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Fix #55146: iconv_mime_decode_headers() skips some headers
2018-08-25 14:43: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
Christoph M. Becker
c520b4a99e Merge branch 'PHP-7.3'
* PHP-7.3:
  Fix #53891: iconv_mime_encode() fails to Q-encode UTF-8 string
2018-08-25 14:30:24 +02:00
Christoph M. Becker
eb03290754 Fix #53891: iconv_mime_encode() fails to Q-encode UTF-8 string
The minimum length of an encoded-word is actually the pure encoding
overhead plus the length of the `output-charset` plus the minimum unit
of encoded text, which is 4 for B-encoding and (for simplicity) 3 for
Q-encoding.  We also cater to the possibility that we need further
encoded words, which would be split by the `line-break-chars` followed
by a space character.  Obviously, the former `out_charset_len + 12` is
too simplistic and wrong in the given case (where the magic number
would be 13).

These simplifications are somewhat wasteful, but iconv_mime_encode()
with Q-encoding is wasteful anyway (see bug 66828[1]), and the proper
solution to convert the whole input to the desired output charset
upfront, and applying the encoding afterwards appears too much a change
for the stable releases.

[1] <https://bugs.php.net/66828>
2018-08-25 14:30:07 +02:00
Christoph M. Becker
70842b8be0 Merge branch 'PHP-7.3'
* PHP-7.3:
  Fix #76712: Assignment of empty string creates extraneous text node
2018-08-25 14:24:43 +02:00
Christoph M. Becker
692e5d5c88 Fix #76712: Assignment of empty string creates extraneous text node
We work around this peculiarity of libxml by using xmlNodeSetContent(),
which does not exhibit this behavior.  This also saves us from manually
calculating the string length.
2018-08-25 14:24:09 +02:00
Christoph M. Becker
23aa355bf2 Merge branch 'PHP-7.3'
* PHP-7.3:
  Remove some old parts of the php
2018-08-25 11:58:50 +02:00
Peter Kokot
fcf4088d3f Remove some old parts of the php
Since ba138a3746 the generate-phpt library
has been unbundled from the php-src. This patch cleans two remaining
parts.
2018-08-25 11:58:17 +02:00
Peter Kokot
7b39e8a338 Remove Doxygen configuration
Documentation for the SPL was once rendered at
http://www.php.net/~helly/php/ext/spl/

With upgrades of the PHP manual, the SPL documentation moved there
instead and PHP files for the SPL docs in the PHP source code directory
were outdated and removed via 9003d8a4cf
2018-08-25 11:42:45 +02:00
Peter Kokot
3ceecaa9a0 Replace HAVE_ST_BLOCKS with HAVE_STRUCT_STAT_ST_BLOCKS
Since Autoconf 2.50+ macro AC_STRUCT_ST_BLOCKS defines the new
HAVE_STRUCT_STAT_ST_BLOCKS symbol and has deprecated the previous
HAVE_ST_BLOCKS.

PHP 5.3 required Autoconf 2.13 (released in 1999) or newer, since PHP
5.4 the autoconf 2.59 (released in 2003) or newer was required, and
since PHP 7.2, autoconf 2.64 (released in 2008) or newer is required.
2018-08-24 18:33:23 +02:00
Dmitry Stogov
6136a20544 ZEND_DECLARE_CLASS, ZEND_DECLARE_INHERITED_CLASS and ZEND_DECLARE_INHERITED_CLASS_DELAYED don't need return value anymore. 2018-08-24 15:40:53 +03:00
Dmitry Stogov
b36dbdd1dd Perform "early-binding" directly during compilation 2018-08-24 15:18:38 +03:00
Dmitry Stogov
8050f4a334 Keep information about unresolved parent class in zend_class_entry->parent_name 2018-08-24 00:20:57 +03:00
Anatol Belski
644bdaf9cd Merge branch 'PHP-7.3'
* PHP-7.3:
  mkdist.php: recursively check dll dependencies
2018-08-23 21:28:08 +02:00
Anatol Belski
f15fc8ea1e Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  mkdist.php: recursively check dll dependencies
2018-08-23 21:27:43 +02:00