#
32a26443 |
| 16-Mar-2020 |
Christoph M. Becker |
Fix #79200: Some iconv functions cut Windows-1258 To cater to potentially state-dependent encodings, we have to reset the conversion descriptor into its initial shift state to properly f
Fix #79200: Some iconv functions cut Windows-1258 To cater to potentially state-dependent encodings, we have to reset the conversion descriptor into its initial shift state to properly finish the conversion. Furthermore, state-dependent encodings may not show progress when comparing `in_left` before and after the conversion; we rather have to see whether `out_left` has decreased. Also we have to cater to the fact that the final potentially state resetting call does not signal failure, but we still have to break respective loops afterwards.
show more ...
|
Revision tags: php-7.3.13RC1, php-7.2.26RC1, php-7.4.0, php-7.2.25, php-7.3.12, php-7.4.0RC6, php-7.3.12RC1, php-7.2.25RC1, php-7.4.0RC5, php-7.1.33, php-7.2.24, php-7.3.11, php-7.4.0RC4 |
|
#
195c2008 |
| 08-Oct-2019 |
Christoph M. Becker |
Fix #78642: Wrong libiconv version displayed The high byte of `_libiconv_version` specifies the major version; the low byte the minor version.
|
Revision tags: php-7.3.11RC1, php-7.2.24RC1, php-7.4.0RC3, php-7.2.23, php-7.3.10, php-7.4.0RC2, php-7.2.23RC1, php-7.3.10RC1, php-7.4.0RC1, php-7.1.32, php-7.2.22, php-7.3.9, php-7.4.0beta4, php-7.2.22RC1, php-7.3.9RC1, php-7.4.0beta2, php-7.1.31, php-7.2.21, php-7.3.8, php-7.4.0beta1, php-7.2.21RC1, php-7.3.8RC1, php-7.4.0alpha3, php-7.3.7, php-7.2.20, php-7.4.0alpha2, php-7.3.7RC3, php-7.3.7RC2, php-7.2.20RC2, php-7.4.0alpha1, php-7.3.7RC1, php-7.2.20RC1, php-7.2.19, php-7.3.6, php-7.1.30 |
|
#
7cf7148a |
| 27-May-2019 |
Stanislav Malyshev |
Fix bug #78069 - Out-of-bounds read in iconv.c:_php_iconv_mime_decode() due to integer overflow
|
Revision tags: php-7.2.19RC1, php-7.3.6RC1, php-7.1.29, php-7.2.18, php-7.3.5, php-7.2.18RC1, php-7.3.5RC1, php-7.2.17, php-7.3.4, php-7.1.28, php-7.3.4RC1, php-7.2.17RC1, php-7.1.27, php-7.3.3, php-7.2.16, php-7.3.3RC1, php-7.2.16RC1, php-7.2.15, php-7.3.2, php-7.2.15RC1, php-7.3.2RC1, php-5.6.40, php-7.1.26, php-7.3.1, php-7.2.14, php-7.2.14RC1, php-7.3.1RC1, php-5.6.39, php-7.1.25, php-7.2.13, php-7.0.33, php-7.3.0, php-7.1.25RC1, php-7.2.13RC1, php-7.3.0RC6 |
|
#
a56cdd0a |
| 14-Nov-2018 |
Christoph M. Becker |
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 i
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.
show more ...
|
Revision tags: php-7.1.24, php-7.2.12, php-7.3.0RC5, php-7.1.24RC1, php-7.2.12RC1, php-7.3.0RC4, php-7.1.23, php-7.2.11, php-7.3.0RC3, php-7.1.23RC1, php-7.2.11RC1, php-7.3.0RC2 |
|
#
9cbe1283 |
| 22-Sep-2018 |
Christoph M. Becker |
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
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>
show more ...
|
Revision tags: php-5.6.38, php-7.1.22, php-7.3.0RC1, php-7.2.10, php-7.0.32 |
|
#
153e292e |
| 04-Sep-2018 |
Nikita Popov |
Escape trigraph sequence ??= is a trigraph for #, so it needs to be escaped. To stay consistent I'm escaping all question marks in this literal, even though one of the latter two wou
Escape trigraph sequence ??= is a trigraph for #, so it needs to be escaped. To stay consistent I'm escaping all question marks in this literal, even though one of the latter two would suffice.
show more ...
|
Revision tags: php-7.1.22RC1, php-7.3.0beta3, php-7.2.10RC1 |
|
#
efb86aef |
| 26-Aug-2018 |
Christoph M. Becker |
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`
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.
show more ...
|
#
e29c946c |
| 25-Aug-2018 |
Christoph M. Becker |
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 us
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.
show more ...
|
Revision tags: php-7.1.21, php-7.2.9, php-7.3.0beta2 |
|
#
8754d441 |
| 12-Aug-2018 |
Christoph M. Becker |
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 lin
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.
show more ...
|
#
6e1980e1 |
| 12-Aug-2018 |
Christoph M. Becker |
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 n
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`.
show more ...
|
#
eb032907 |
| 12-Aug-2018 |
Christoph M. Becker |
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 t
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>
show more ...
|
Revision tags: php-7.1.21RC1, php-7.3.0beta1, php-7.2.9RC1, php-5.6.37, php-7.1.20, php-7.3.0alpha4, php-7.0.31, php-7.2.8, php-7.1.20RC1, php-7.2.8RC1, php-7.3.0alpha3 |
|
#
8d3f8ca1 |
| 03-Jul-2018 |
Peter Kokot |
Remove unused Git attributes ident The $Id$ keywords were used in Subversion where they can be substituted with filename, last revision number change, last changed date, and last use
Remove unused Git attributes ident The $Id$ keywords were used in Subversion where they can be substituted with filename, last revision number change, last changed date, and last user who changed it. In Git this functionality is different and can be done with Git attribute ident. These need to be defined manually for each file in the .gitattributes file and are afterwards replaced with 40-character hexadecimal blob object name which is based only on the particular file contents. This patch simplifies handling of $Id$ keywords by removing them since they are not used anymore.
show more ...
|
#
4a475a49 |
| 04-Jul-2018 |
Dmitry Stogov |
Replace legacy zval_dtor() by zval_ptr_dtor_nogc() or even more specialized destructors. zval_dtor() doesn't make a lot of sense in PHP-7.* and it's used incorrectly in some places. Its occur
Replace legacy zval_dtor() by zval_ptr_dtor_nogc() or even more specialized destructors. zval_dtor() doesn't make a lot of sense in PHP-7.* and it's used incorrectly in some places. Its occurances should be replaced by zval_ptr_dtor() or zval_ptr_dtor_nogc(), or even more specialized destructors.
show more ...
|
Revision tags: php-7.3.0alpha2, php-7.1.19, php-7.2.7, php-7.1.19RC1, php-7.3.0alpha1, php-7.2.7RC1 |
|
#
5eb1f92f |
| 28-May-2018 |
Dmitry Stogov |
Use zend_string_release_ex() instread of zend_string_release() in places, where we sure about string persistence.
|
Revision tags: php-7.1.18, php-7.2.6, php-7.2.6RC1, php-7.1.18RC1 |
|
#
524f5245 |
| 08-May-2018 |
Dmitry Stogov |
Avoid useless checks, using zend_string_efree(), in cases where the string is known to be a temporary allocated zend_string.
|
Revision tags: php-5.6.36, php-7.2.5, php-7.1.17, php-7.0.30 |
|
#
ee76a5ae |
| 23-Apr-2018 |
Stanislav Malyshev |
Fix tsrm_ls
|
#
06d309fd |
| 23-Apr-2018 |
Stanislav Malyshev |
Fix bug #76249 - fail on invalid sequences
|
Revision tags: php-7.1.17RC1, php-7.2.5RC1, php-5.6.35, php-7.0.29, php-7.2.4, php-7.1.16, php-7.1.16RC1, php-7.2.4RC1, php-7.1.15, php-5.6.34, php-7.2.3, php-7.0.28 |
|
#
b2cd2741 |
| 17-Feb-2018 |
Anatol Belski |
Remove unnecessary cast
|
Revision tags: php-7.2.3RC1, php-7.1.15RC1, php-7.1.14, php-7.2.2 |
|
#
aad76a9b |
| 25-Jan-2018 |
Philip Prindeville |
Be consistent in clearing out in php_iconv_string()
|
Revision tags: php-7.1.14RC1, php-7.2.2RC1, php-7.1.13, php-5.6.33, php-7.2.1, php-7.0.27 |
|
#
a6519d05 |
| 02-Jan-2018 |
Xinchen Hui |
year++
|
#
7a7ec01a |
| 02-Jan-2018 |
Xinchen Hui |
year++
|
#
ccd4716e |
| 02-Jan-2018 |
Xinchen Hui |
year++
|
#
83e495e0 |
| 14-Dec-2017 |
Dmitry Stogov |
Move constants into read-only data segment
|
#
9e709e2f |
| 14-Dec-2017 |
Dmitry Stogov |
Move constants into read-only data segment
|
Revision tags: php-7.2.1RC1 |
|
#
6a9d2b21 |
| 07-Dec-2017 |
Dmitry Stogov |
Cleanup type conversion
|