1
0
mirror of https://github.com/php/php-src.git synced 2026-04-25 17:08:14 +02:00
Commit Graph

114329 Commits

Author SHA1 Message Date
Nikita Popov bd38129fa4 Merge branch 'PHP-7.4' 2019-07-16 10:25:14 +02:00
Nikita Popov 26977fdfdd Fix name collisions in fputcsv tests 2019-07-16 10:25:06 +02:00
Nikita Popov e2e3ddac7d Canonicalize file-names in zip tests
There were a number of name collisions in there.
2019-07-16 10:25:06 +02:00
Dmitry Stogov ab2888511b Merge branch 'PHP-7.4'
* PHP-7.4:
  Delay IS_UNDEF checks
2019-07-16 11:17:04 +03:00
Dmitry Stogov 1d4c38421a Delay IS_UNDEF checks 2019-07-16 11:16:45 +03:00
Dmitry Stogov c0b683e751 Merge branch 'PHP-7.4'
* PHP-7.4:
  Fixed incorrect specialization (missed IS_INDIRECT handling)
2019-07-16 01:54:34 +03:00
Dmitry Stogov 2e26b063b6 Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Fixed incorrect specialization (missed IS_INDIRECT handling)
2019-07-16 01:54:22 +03:00
Dmitry Stogov c570980175 Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Fixed incorrect specialization (missed IS_INDIRECT handling)
2019-07-16 01:52:11 +03:00
Dmitry Stogov 9ccf3fb996 Fixed incorrect specialization (missed IS_INDIRECT handling) 2019-07-16 01:50:10 +03:00
Peter Kokot ccac19ed6c Merge branch 'PHP-7.4'
* PHP-7.4:
  Small typo and proto name fix
2019-07-15 18:15:58 +02:00
George Peter Banyard 548d1ec27c Small typo and proto name fix
Closes GH-4415
2019-07-15 18:15:17 +02:00
Peter Kokot 62d21d8e20 Merge branch 'PHP-7.4'
* PHP-7.4:
  Remove win32/php_stdbool.h
2019-07-15 18:00:31 +02:00
Peter Kokot 24f4dff075 Remove win32/php_stdbool.h
File usage was removed via 33fc7d77d7.

Closes GH-4411
2019-07-15 18:00:04 +02:00
Peter Kokot f213132c72 Merge branch 'PHP-7.4'
* PHP-7.4:
  Remove unused files
2019-07-15 17:59:17 +02:00
Peter Kokot 59ba991b9c Remove unused files
These were introduced in 504b9beae6
and their usages were removed via
4b3e198023.

Closes GH-4410
2019-07-15 17:58:46 +02:00
Peter Kokot 160ba0f7bd Merge branch 'PHP-7.4'
* PHP-7.4:
  Remove Windows syslog script and syslog.reg
2019-07-15 17:57:51 +02:00
Peter Kokot cc44bad1f6 Remove Windows syslog script and syslog.reg
These were used on old Windows systems before Vista and also were
used together with unmaintained win32std extension.

https://docs.microsoft.com/en-us/windows/win32/eventlog/event-logging

Closes GH-4409
2019-07-15 17:57:11 +02:00
Peter Kokot f6c684a45f Merge branch 'PHP-7.4'
* PHP-7.4:
  Remove some *.dsp/*.dsw leftovers
2019-07-15 17:56:07 +02:00
Peter Kokot 07daf6cd62 Remove some *.dsp/*.dsw leftovers
Usage of this was removed via 4b3e198023

Closes GH-4408
2019-07-15 17:55:37 +02:00
Nikita Popov 90d5276e1b Merge branch 'PHP-7.4' 2019-07-15 17:29:45 +02:00
Nikita Popov fcdb12ed4d Combine SKIP_TOKEN+RETURN_TOKEN into one macro 2019-07-15 17:29:27 +02:00
Nikita Popov 9207aef60c Merge branch 'PHP-7.4' 2019-07-15 16:26:25 +02:00
Nikita Popov c5f1b384b5 Move shebang handling into the lexer
Instead of handling shebang lines by adjusting the file pointer in
individual SAPIs, move the handling into the lexer, where this is
both a lot simpler and more robust. Whether the shebang should be
skipped is controlled by CG(skip_shebang) -- we might want to do
that in more cases.

This fixed bugs #60677 and #78066.
2019-07-15 16:25:49 +02:00
Nikita Popov e33d7dc9e6 Merge branch 'PHP-7.4' 2019-07-15 15:20:45 +02:00
Nikita Popov 17d4e86dda Merge branch 'PHP-7.3' into PHP-7.4 2019-07-15 15:20:36 +02:00
Nikita Popov 2d737a1e4b Merge branch 'PHP-7.2' into PHP-7.3 2019-07-15 15:20:15 +02:00
Nikita Popov 88ffe05797 Fix bug #77124
This is a backport of 6fcae63f61
to PHP 7.2.
2019-07-15 15:19:31 +02:00
Christoph M. Becker 35c5e0a052 Merge branch 'PHP-7.4'
* PHP-7.4:
  Sync mysqlnd version with PHP version
2019-07-15 14:21:25 +02:00
Christoph M. Becker 37043e07df Sync mysqlnd version with PHP version
Since mysqlnd is solely developed in the php-src repository, it makes
not much sense to have its own version number, particularly since
nobody cares to update it.  Therefore we use PHP's version number, but
stick with the "mysqlnd" prefix which can be important to distinguish
the mysqli driver (libmysqlclient vs. mysqlnd).
2019-07-15 14:20:58 +02:00
Remi Collet f6e32613c7 Merge branch 'PHP-7.4'
* PHP-7.4:
  typo [ci skip]
2019-07-15 14:17:32 +02:00
Remi Collet da1816c3d3 Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  typo [ci skip]
2019-07-15 14:17:23 +02:00
Remi Collet ad48464ec2 typo [ci skip] 2019-07-15 14:17:13 +02:00
Remi Collet 40bed7b3a7 Merge branch 'PHP-7.4'
* PHP-7.4:
  Fix #78269 password_hash uses weak options for argon2
  Fix #78269 password_hash uses weak options for argon2
2019-07-15 14:12:13 +02:00
Remi Collet c77f0506d0 Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Fix #78269 password_hash uses weak options for argon2
  Fix #78269 password_hash uses weak options for argon2
2019-07-15 14:11:57 +02:00
Remi Collet 590d8f8263 Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Fix #78269 password_hash uses weak options for argon2
2019-07-15 14:11:38 +02:00
Remi Collet a7ff3a6483 Fix #78269 password_hash uses weak options for argon2 2019-07-15 14:11:30 +02:00
Remi Collet eab0079c90 Fix #78269 password_hash uses weak options for argon2 2019-07-15 14:10:38 +02:00
Christoph M. Becker 7556600dfc Fix #65547: Default value for sunrise/sunset zenith still wrong
The value of the zenith angle to calculate sunrise and sunset times is
commonly defined as 90°50', and is "obtained by adding the average
apparent radius of the Sun (16') to the average amount of atmospheric
refraction at the horizon (34')", according to
http://aa.usno.navy.mil/faq/docs/RST_defs.php.

This value is also used for the Sunrise/Sunset Algorithm published in
the Almanac for Computers, 1990, see
https://web.archive.org/web/20161202180207/http://williams.best.vwh.net/sunrise_sunset_algorithm.htm.
2019-07-15 13:52:09 +02:00
Nikita Popov 25985fedcf Merge branch 'PHP-7.4' 2019-07-15 13:49:36 +02:00
Nikita Popov d60d16bda6 Merge branch 'PHP-7.3' into PHP-7.4 2019-07-15 13:49:29 +02:00
Nikita Popov 193bcf9650 Merge branch 'PHP-7.4' 2019-07-15 12:52:18 +02:00
Nikita Popov 9ad094e371 Emit T_BAD_CHARACTER for unexpected characters
Avoid having holes in the token stream which are annoying and
inefficient to reconstruct on the consumer side.
2019-07-15 12:51:01 +02:00
Nikita Popov f821256d00 Remove unused is_constructor arguments 2019-07-15 12:36:31 +02:00
Nikita Popov 193f28c7d5 Fixed bug #78010
Prevent the gc_info from becoming all zero for a registered root
by setting the top bit to one for compressed root addresses.
2019-07-15 12:00:30 +02:00
Dmitry Stogov 01d0bd126c Merge branch 'PHP-7.4'
* PHP-7.4:
  vectorize string-escape with NEON
2019-07-15 11:36:11 +03:00
Sebastian Pop af7639683f vectorize string-escape with NEON
On this benchmark:
function simple_string_escape() {
    $a = "test'asd'asd'' asd\'\"asdfasdf";
    for($i=0; $i<512; $i++) {
        $a .= chr($i%256);
    }
    for ($i = 0; $i < 100000; $i++) {
        if ($a === stripslashes(addslashes($a)))
            $a .= chr($i%256);
        else {
            echo "error at i=".$i."\n";
            return;
        }
    }
}
the execution time goes from 21.619s to 8.139s (165% speedup) on an A1 Graviton instance.

When removing the characters that need escaping, i.e., this benchmark:
function simple_string() {
  $a = "testasdasd asdasdfasdf";
  for ($i = 0; $i < 10000; $i++) {
      if ($a === stripslashes(addslashes($a)))
          $a .= "test dedeasdf";
      else {
          echo "error at i=".$i."\n";
          return;
      }
  }
}
the execution time goes from 2.932s down to 0.516s (468% speedup) on an A1 Graviton instance.
2019-07-15 11:35:08 +03:00
Nikita Popov 8a10258a53 Merge branch 'PHP-7.4' 2019-07-15 10:33:31 +02:00
Nikita Popov a520c24269 Merge branch 'PHP-7.3' into PHP-7.4 2019-07-15 10:29:37 +02:00
Nikita Popov 3eb057c4a7 Merge branch 'PHP-7.2' into PHP-7.3 2019-07-15 10:23:51 +02:00
Andrew Collington 768ad70f70 Fix bug #78291 Missing opcache directives
New opcache directives have been added recently which are returned
if using `ini_get_all('zend opcache')` but are not listed in the
directives if using `opcache_get_configuration()`.  This fix adds
those missing directives as well as if `opcache.mmap_base` is used
instead of `opcache.lockfile_path`.  Also adds a test to ensure the
directives match with both methods of fetching.
2019-07-15 10:22:47 +02:00