]>
granicus.if.org Git - php/log
Tom Van Looy [Sun, 3 Dec 2017 21:35:50 +0000 (22:35 +0100)]
Remove RAND_RANGE() macro
The behavior of RANGE_RANGE() is 7.1 changed completely, from
rescaling an already generated number to generating a number
itself. Because of this str_shuffle() ended up generating two
random numbers on every iteration.
To avoid further misuse the function is dropped entirely. Extensions
for PHP >= 7.1 should directly call php_mt_rand_range().
David Walker [Fri, 6 Oct 2017 23:30:58 +0000 (17:30 -0600)]
Implement list() reference assignments
Support list() reference assignments of the form:
list(&$a, list(&$b, $c)) = $d;
RFC: https://wiki.php.net/rfc/list_reference_assignment
Anatol Belski [Sat, 9 Dec 2017 12:15:28 +0000 (13:15 +0100)]
Move temporary allocation to the stack
Anatol Belski [Sat, 9 Dec 2017 11:57:37 +0000 (12:57 +0100)]
Fix tests
Anatol Belski [Sat, 9 Dec 2017 11:38:19 +0000 (12:38 +0100)]
Use cheaper ascii conversion for mode
Anatol Belski [Sat, 9 Dec 2017 10:45:21 +0000 (11:45 +0100)]
Revamp fopen implementation, rely on open
Anatol Belski [Fri, 8 Dec 2017 23:26:18 +0000 (00:26 +0100)]
Put missing signature into header
Anatol Belski [Fri, 8 Dec 2017 23:21:23 +0000 (00:21 +0100)]
Cleanup
Anatol Belski [Fri, 8 Dec 2017 23:11:33 +0000 (00:11 +0100)]
Rework mkdir impl and expose wide char variant
Anatol Belski [Fri, 8 Dec 2017 21:59:00 +0000 (22:59 +0100)]
Remove dead code
Anatol Belski [Fri, 8 Dec 2017 15:47:39 +0000 (16:47 +0100)]
Move declarations
Anatol Belski [Fri, 8 Dec 2017 15:35:45 +0000 (16:35 +0100)]
Improve ioutil access impl and refactor tsrm_win32_access
Anatol Belski [Thu, 7 Dec 2017 22:05:19 +0000 (23:05 +0100)]
Revamp unlink() implementation and improve error handling
Anatol Belski [Thu, 7 Dec 2017 15:52:23 +0000 (16:52 +0100)]
Allow delete-sharing mode for CreateFile by default
This effectively allows a UNIX like semantics for deleting files
with an open handle. Some OS related limitations still persist,
but the Windows 95 times can be considered as definitely over.
Dmitry Stogov [Fri, 8 Dec 2017 16:55:12 +0000 (19:55 +0300)]
Improved shared interned string table implementation (use less memory and more CPU cache friendly)
Dmitry Stogov [Thu, 7 Dec 2017 19:35:17 +0000 (22:35 +0300)]
Use cheaper SEPARATE macros
Dmitry Stogov [Thu, 7 Dec 2017 19:34:38 +0000 (22:34 +0300)]
Removed useless separations
Dmitry Stogov [Thu, 7 Dec 2017 19:34:08 +0000 (22:34 +0300)]
Cleanup type conversion
Dmitry Stogov [Thu, 7 Dec 2017 19:01:41 +0000 (22:01 +0300)]
Cleanup type conversion
Dmitry Stogov [Thu, 7 Dec 2017 16:24:55 +0000 (19:24 +0300)]
Cleanup type conversion
Dmitry Stogov [Thu, 7 Dec 2017 12:20:17 +0000 (15:20 +0300)]
Use array specific functions
Dmitry Stogov [Thu, 7 Dec 2017 12:01:23 +0000 (15:01 +0300)]
Added assertion
Dmitry Stogov [Thu, 7 Dec 2017 12:01:04 +0000 (15:01 +0300)]
SEPARATE_STRING() micro optimization
Dmitry Stogov [Thu, 7 Dec 2017 11:59:42 +0000 (14:59 +0300)]
Avoid duplication
Dmitry Stogov [Thu, 7 Dec 2017 09:27:16 +0000 (12:27 +0300)]
Intern string constant values
Dmitry Stogov [Thu, 7 Dec 2017 09:26:48 +0000 (12:26 +0300)]
typo
Dmitry Stogov [Thu, 7 Dec 2017 09:00:41 +0000 (12:00 +0300)]
Avoid unnecessary duplication
Dmitry Stogov [Thu, 7 Dec 2017 08:59:58 +0000 (11:59 +0300)]
Wrap functions necessary only for ZTS build with #ifdef
Dmitry Stogov [Wed, 6 Dec 2017 22:52:27 +0000 (01:52 +0300)]
Reduced VM code size.
Made FETCH_DIM/OBJ_FUNC_ARG to dispatch ro corresponding FETCH_DIM/OBJ_R/_W handlers.
Merged TMP and VAR specializations of ZEND_FETCH_OBJ_R.
Allowed dispatching to less specialized handelrs and helpers. (e.g. from OP_TMP_CONST to OP_TMPVAR_CONST).
Nikita Popov [Wed, 6 Dec 2017 22:32:39 +0000 (23:32 +0100)]
Fixed bug #74372
Nikita Popov [Wed, 6 Dec 2017 22:15:09 +0000 (23:15 +0100)]
Fix movzb operand size
Anatol Belski [Wed, 6 Dec 2017 15:04:57 +0000 (16:04 +0100)]
Merge branch 'PHP-7.2'
* PHP-7.2:
Fix yet one data race in PCRE
Anatol Belski [Wed, 6 Dec 2017 15:04:22 +0000 (16:04 +0100)]
Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
Fix yet one data race in PCRE
Anatol Belski [Wed, 6 Dec 2017 14:59:21 +0000 (15:59 +0100)]
Fix yet one data race in PCRE
PCRE 8.x initializes the pattern compiler on demand during the first
pcre_study call. It could be worse, but since the compiled patterns are
cached, the locking impact is minimal. PCRE 10.x always compiles the
pattern and thread sanitizer doesn't complain about the compiler
initialization, thus the newer PCRE version seems to be unafected.
Dmitry Stogov [Wed, 6 Dec 2017 14:47:30 +0000 (17:47 +0300)]
Use local labels
Dmitry Stogov [Wed, 6 Dec 2017 14:42:47 +0000 (17:42 +0300)]
Use inline assembler for fast_memcpy()
Dmitry Stogov [Wed, 6 Dec 2017 12:32:31 +0000 (15:32 +0300)]
Fixed gcc assembler constaints.
Added less efecient replacement functions for valgrind, to prevent warnings about uninitialized tail.
Dmitry Stogov [Tue, 5 Dec 2017 23:53:30 +0000 (02:53 +0300)]
Optimization of init_func_execute_data()
Anatol Belski [Tue, 5 Dec 2017 17:35:16 +0000 (18:35 +0100)]
Merge branch 'PHP-7.2'
* PHP-7.2:
Fix use after free revealed by phpdbg
Anatol Belski [Tue, 5 Dec 2017 17:34:39 +0000 (18:34 +0100)]
Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
Fix use after free revealed by phpdbg
Anatol Belski [Tue, 5 Dec 2017 17:32:32 +0000 (18:32 +0100)]
Fix use after free revealed by phpdbg
Anatol Belski [Tue, 5 Dec 2017 16:41:08 +0000 (17:41 +0100)]
Fixed bug #75601 Thread race in PCRE JIT support
Anatol Belski [Tue, 5 Dec 2017 16:40:39 +0000 (17:40 +0100)]
Merge branch 'PHP-7.2'
* PHP-7.2:
Fixed bug #75601 Thread race in PCRE JIT support
Fixed bug #75601 Thread race in PCRE JIT support
bump versions
Anatol Belski [Tue, 5 Dec 2017 16:40:00 +0000 (17:40 +0100)]
Fixed bug #75601 Thread race in PCRE JIT support
Anatol Belski [Tue, 5 Dec 2017 16:39:28 +0000 (17:39 +0100)]
Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
Fixed bug #75601 Thread race in PCRE JIT support
bump versions
Anatol Belski [Tue, 5 Dec 2017 16:38:18 +0000 (17:38 +0100)]
Fixed bug #75601 Thread race in PCRE JIT support
Dmitry Stogov [Tue, 5 Dec 2017 14:40:39 +0000 (17:40 +0300)]
Removed useless LOAD_OPLINE()
krakjoe [Tue, 5 Dec 2017 13:18:48 +0000 (14:18 +0100)]
bump versions
Peter Kokot [Thu, 30 Nov 2017 23:48:50 +0000 (00:48 +0100)]
Remove tutorial for building IMAP on windows
Procedure for building PHP on Windows systems has changed during the PHP
evolution and is for the time being available on wiki pages outside of
this code repository.
Anatol Belski [Tue, 5 Dec 2017 08:01:46 +0000 (09:01 +0100)]
Merge branch 'PHP-7.2'
* PHP-7.2:
[ci skip] update NEWS
[ci skip] update NEWS
Anatol Belski [Tue, 5 Dec 2017 08:01:02 +0000 (09:01 +0100)]
[ci skip] update NEWS
Anatol Belski [Tue, 5 Dec 2017 08:00:12 +0000 (09:00 +0100)]
Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
[ci skip] update NEWS
Anatol Belski [Tue, 5 Dec 2017 07:59:33 +0000 (08:59 +0100)]
[ci skip] update NEWS
Anatol Belski [Tue, 5 Dec 2017 07:52:59 +0000 (08:52 +0100)]
Merge branch 'PHP-7.2'
* PHP-7.2:
7.0.28 is next
Anatol Belski [Tue, 5 Dec 2017 07:52:40 +0000 (08:52 +0100)]
Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
7.0.28 is next
Anatol Belski [Tue, 5 Dec 2017 07:52:14 +0000 (08:52 +0100)]
Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
7.0.28 is next
Anatol Belski [Tue, 5 Dec 2017 07:51:30 +0000 (08:51 +0100)]
7.0.28 is next
Anatol Belski [Tue, 5 Dec 2017 07:42:41 +0000 (08:42 +0100)]
Merge branch 'PHP-7.2'
* PHP-7.2:
[ci skip] update NEWS
Anatol Belski [Tue, 5 Dec 2017 07:42:25 +0000 (08:42 +0100)]
Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
[ci skip] update NEWS
Anatol Belski [Tue, 5 Dec 2017 07:42:02 +0000 (08:42 +0100)]
Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
[ci skip] update NEWS
Anatol Belski [Tue, 5 Dec 2017 07:41:24 +0000 (08:41 +0100)]
[ci skip] update NEWS
Dmitry Stogov [Mon, 4 Dec 2017 23:41:12 +0000 (02:41 +0300)]
Use unsigned comparison instructions
Dmitry Stogov [Mon, 4 Dec 2017 20:40:54 +0000 (23:40 +0300)]
Implemented x86 and x86_64 assembler functions for zend_string equality check.
They take into account zend_string layout (value alignment and trailing padding) and perform comparison by double or quad words.
Nuno Lopes [Mon, 4 Dec 2017 20:12:20 +0000 (15:12 -0500)]
fix build with older gccs: label attributes are only available with gcc 5+
Kalle Sommer Nielsen [Mon, 4 Dec 2017 16:39:08 +0000 (17:39 +0100)]
Introduce ZEND_EXTENSION() to the Windows build system
Zend Extensions should now be declared in their config.w32 with a ZEND_EXTENSION() call instead of EXTENSION(), the parameters sent is identical.
For a cross version compatible config.w32, the following will do:
if (typeof(ZEND_EXTENSION) == 'undefined') {
EXTENSION(...);
} else {
ZEND_EXTENSION(...);
}
Kalle Sommer Nielsen [Mon, 4 Dec 2017 15:43:48 +0000 (16:43 +0100)]
Remove this redundant define
Dmitry Stogov [Mon, 4 Dec 2017 14:23:34 +0000 (17:23 +0300)]
Merge branch 'PHP-7.2'
* PHP-7.2:
Fixed bug #75608 ("Narrowing occurred during type inference" error)
Dmitry Stogov [Mon, 4 Dec 2017 14:22:28 +0000 (17:22 +0300)]
Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
Fixed bug #75608 ("Narrowing occurred during type inference" error)
Dmitry Stogov [Mon, 4 Dec 2017 14:22:06 +0000 (17:22 +0300)]
Fixed bug #75608 ("Narrowing occurred during type inference" error)
Dmitry Stogov [Mon, 4 Dec 2017 14:17:02 +0000 (17:17 +0300)]
Use zend_string_equal*() API for zend_string equality check instead of direct memcmp() usage.
Anatol Belski [Mon, 4 Dec 2017 13:20:25 +0000 (14:20 +0100)]
Merge branch 'PHP-7.2'
* PHP-7.2:
Use dtor unconditionally in error case
Anatol Belski [Mon, 4 Dec 2017 13:16:45 +0000 (14:16 +0100)]
Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
Use dtor unconditionally in error case
Anatol Belski [Mon, 4 Dec 2017 13:16:23 +0000 (14:16 +0100)]
Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
Use dtor unconditionally in error case
Anatol Belski [Mon, 4 Dec 2017 13:11:40 +0000 (14:11 +0100)]
Use dtor unconditionally in error case
Anatol Belski [Mon, 4 Dec 2017 10:52:56 +0000 (11:52 +0100)]
Merge branch 'PHP-7.2'
* PHP-7.2:
Fixed bug #75573 (Segmentation fault in 7.1.12 and 7.0.26)
Anatol Belski [Mon, 4 Dec 2017 10:52:33 +0000 (11:52 +0100)]
Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
Fixed bug #75573 (Segmentation fault in 7.1.12 and 7.0.26)
Anatol Belski [Mon, 4 Dec 2017 10:52:09 +0000 (11:52 +0100)]
Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
Fixed bug #75573 (Segmentation fault in 7.1.12 and 7.0.26)
Xinchen Hui [Wed, 29 Nov 2017 06:46:21 +0000 (14:46 +0800)]
Fixed bug #75573 (Segmentation fault in 7.1.12 and 7.0.26)
(cherry picked from commit
3b9ba7b6bd9e24bdbeca8e8e3f24cee2fccc51d8 )
Dmitry Stogov [Mon, 4 Dec 2017 10:21:35 +0000 (13:21 +0300)]
Use cheaper functions
Nuno Lopes [Sun, 3 Dec 2017 22:58:40 +0000 (17:58 -0500)]
fix build of intl/calendar
Anatol Belski [Sun, 3 Dec 2017 11:29:03 +0000 (12:29 +0100)]
Merge branch 'PHP-7.2'
* PHP-7.2:
Fix compat with libcurl 7.56.1+ and file:// wrapper
Anatol Belski [Sun, 3 Dec 2017 11:28:41 +0000 (12:28 +0100)]
Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
Fix compat with libcurl 7.56.1+ and file:// wrapper
Anatol Belski [Sun, 3 Dec 2017 11:23:25 +0000 (12:23 +0100)]
Fix compat with libcurl 7.56.1+ and file:// wrapper
Since 7.52.x libcurl file:// scheme was implemented in a way described
in https://tools.ietf.org/html/draft-ietf-appsawg-file-scheme-16 . The
draft is still not accepted and the change contained a BC breach with
win32 path handling. It was reported upstream and 7.52.x fixed it, but
the BC breaching behavior was reintroduced in 7.56.1. Thus, it is better
to handle this on the PHP side.
Nikita Popov [Sat, 2 Dec 2017 17:11:27 +0000 (18:11 +0100)]
Merge branch 'PHP-7.2'
Nikita Popov [Sat, 2 Dec 2017 17:11:17 +0000 (18:11 +0100)]
Merge branch 'PHP-7.1' into PHP-7.2
Nikita Popov [Sat, 2 Dec 2017 17:11:03 +0000 (18:11 +0100)]
Merge branch 'PHP-7.0' into PHP-7.1
Andy Postnikov [Sat, 10 Dec 2016 20:51:17 +0000 (23:51 +0300)]
Fix ZEND_SIGNED_MULTIPLY_LONG for AArch64
Register operands are required in this context.
This is a backport of
8c8679207ae5ada8751288e75b78c928a4d34d1d
to PHP 7.0+. The current code caused incorrect behavior on AArch64
when compiling with clang.
Anatol Belski [Sat, 2 Dec 2017 09:40:43 +0000 (10:40 +0100)]
Fix junit XML format
The junit XML format is purely documented, some existings spec like
http://llg.cubic.org/docs/junit/ also provide an XSD. The testsuite
tag included into itself doesn't seems to be correct, instead only a
flat list is included into "testsuites" tag.
Anatol Belski [Sat, 2 Dec 2017 01:18:43 +0000 (02:18 +0100)]
Rework junit output
- testcase classname attribute is closest to put the filename
- if tests run from php checkout, don't include the full path
- remove filename from the testcase description, as it's included into
classname
Anatol Belski [Fri, 1 Dec 2017 16:23:03 +0000 (17:23 +0100)]
Implement junit test results upload to AppVeyor
Anatol Belski [Fri, 1 Dec 2017 15:03:49 +0000 (16:03 +0100)]
Merge branch 'PHP-7.2'
* PHP-7.2:
Consider Xdebug for tmi ini generation, too
Anatol Belski [Fri, 1 Dec 2017 15:03:09 +0000 (16:03 +0100)]
Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
Consider Xdebug for tmi ini generation, too
Anatol Belski [Fri, 1 Dec 2017 15:02:38 +0000 (16:02 +0100)]
Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
Consider Xdebug for tmi ini generation, too
Anatol Belski [Fri, 1 Dec 2017 15:01:34 +0000 (16:01 +0100)]
Consider Xdebug for tmi ini generation, too
Dmitry Stogov [Fri, 1 Dec 2017 14:01:10 +0000 (17:01 +0300)]
Merge branch 'PHP-7.2'
* PHP-7.2:
Set trailing zero
Dmitry Stogov [Fri, 1 Dec 2017 14:00:51 +0000 (17:00 +0300)]
Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
Set trailing zero
Dmitry Stogov [Fri, 1 Dec 2017 14:00:42 +0000 (17:00 +0300)]
Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
Set trailing zero
Dmitry Stogov [Fri, 1 Dec 2017 14:00:11 +0000 (17:00 +0300)]
Set trailing zero
Dmitry Stogov [Thu, 30 Nov 2017 22:37:48 +0000 (01:37 +0300)]
Use interned strings as variable names
Dmitry Stogov [Thu, 30 Nov 2017 22:35:47 +0000 (01:35 +0300)]
Added "argv" and "argc" as known strings.
Fixed incorrect "argc" update and corresponding phpdbg test.