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
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
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
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
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
5fe8e49baa
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Simplify regression test
2018-08-23 12:51:11 +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
3278b3347c
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fix #68825 : Exception in DirectoryIterator::getLinkTarget()
2018-08-22 15:40:03 +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
6cf382b667
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Increase memory_limit to prevent test failures
2018-08-22 14:31:36 +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
Chris Wright
9ace33b9c5
Fix #76773 - Methods with a concrete scope need to be added again
2018-08-22 14:08:15 +02:00
Ondřej Surý
02b0bc8bb1
Fix #76767 : ‘asm’ operand has impossible constraints in zend_operators.h
...
We disable assembly code with gcc 4.8 on i386.
2018-08-22 13:57:21 +02:00
Christoph M. Becker
1de17428f6
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fix #76778 : array_reduce leaks memory if callback throws exception
2018-08-22 13:51:16 +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
Nikita Popov
dd07f17f97
Merge branch 'PHP-7.2' into PHP-7.3
2018-08-22 13:43:23 +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
138671f2f4
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fixed bug #76777 and added test
2018-08-22 12:54:39 +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
David Carlier
446b5b15d3
Don't report mmap failure if it is expected
...
When using mmap with MAP_FIXED_NOREPLACE or MAP_FIXED|MAP_EXCL
an mmap failure is not an error condition, so do not print an
error message in this case.
2018-08-22 11:19:52 +02:00
Dmitry Stogov
8d95f561e4
Stop using zend_function->reserved[] space.
2018-08-22 10:43:51 +03:00
David Carlier
0f68ff5c92
Support fixed address mmap without replacement
...
We did not use MAP_FIXED here, because it may replace an existing
mapping. This commit adds support for MAP_FIXED_NOREPLACE (available
on newer Linux kernels) and MAP_FIXED|MAP_EXCL (available on FreeBSD),
which avoid this issue.
2018-08-21 08:31:31 +02:00
Dmitry Stogov
5e5311e0ba
Removed dead code
2018-08-21 09:01:54 +03:00
David Carlier
16a9dd74f4
Avoid directly adding to string literal
...
This fixes a Clang warning.
2018-08-21 06:25:41 +02:00
Dmitry Stogov
b8828926f2
Avoid hash lookups in BIND_STATIC and BIND_LEXICAL opcode handlers.
...
Encode static variable offset into opline->extended_value.
2018-08-20 16:10:09 +03:00
Aaron Stone
1621f1739d
[ci skip] Correct minor typo (GC_GLAGS to GC_FLAGS)
2018-08-20 12:56:34 +02:00
Gabriel Caruso
efbf846fd2
Make array parsing parameters error messages consistency with ZPP failure
2018-08-19 21:27:57 -03:00
Jakub Zelenka
52ea129efb
Merge branch 'PHP-7.2' into PHP-7.3
2018-08-19 20:19:48 +01: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
9708083779
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Use stable deps on AppVeyor for now
2018-08-18 20:05:51 +02: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
be2447fb7c
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Add regression test for bug #68175
Fix #68175 : RegexIterator pregFlags are NULL instead of 0
2018-08-18 14:39:15 +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
990a404c2d
Add test for bug #76738
...
Original repro. It's unwieldy, but it's otherwise hard to trigger
the wrong buffer handling behavior.
2018-08-17 18:31:58 +02:00
Anatol Belski
0414fff205
Fix memory leak
2018-08-17 16:22:35 +02:00
Anatol Belski
aa7777d36c
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Update binary SDK version for AppVeyor
2018-08-17 15:46:28 +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
Christoph M. Becker
a097f926c8
[ci skip] Update NEWS
...
Bug #76285 was supposed to have been fixed for 7.3.0alpha3, but that
has been reverted for 7.3.0beta2 due to bug #76738 . Now that we have a
working fix in master, we backport the respective commits.
2018-08-17 13:06:27 +02:00
Anatol Belski
0c2327b472
Cleanup
...
(cherry picked from commit 8b3174f256 )
2018-08-17 13:01:57 +02:00
Anatol Belski
ddd73d4fa8
Followup fix for ef9ed19e, see also bug #76738
...
(cherry picked from commit 083285f22a )
2018-08-17 13:01:56 +02:00