Commit Graph
1402 Commits
Author SHA1 Message Date
Anatol Belski 0d679c353c Get rid of casts 2018-03-01 20:52:09 +01:00
Christoph M. Becker d5f84fb9c5 Merge branch 'PHP-7.2'
* PHP-7.2:
  Fix some arginfos
2018-02-23 11:32:18 +01:00
Christoph M. Becker c6cf3d4ada Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix some arginfos
2018-02-23 11:29:21 +01:00
Gabriel Caruso 0b8cfa6c78 Fix some arginfos
* all arguments for ftp_pasv are required
* $varname for getenv function isn't required anymore
* fsockopen and pfsockopen only require $hostname
* strtok can work with only one parameter
* strpbrk needs two parameters to work
* required parameters and add some parameters in openssl_* functions
2018-02-23 11:27:14 +01:00
Gabriel Caruso 1314f0fb3a Use int instead of long in protos 2018-02-23 11:06:20 +01:00
Joe 13a9a886fa Revert "Added return type for some basic functions"
This reverts commit b7d2e04f1f.
2018-02-14 11:18:52 +01:00
Dmitry Patsura b7d2e04f1f Added return type for some basic functions 2018-02-14 09:18:52 +01:00
Xinchen Hui cf0fae5e97 Optimized base64_encode/decode with SIMD instructions 2018-02-12 20:53:14 +08:00
Anatol Belski a6e86f7a3f Implement intrinsic function resolving per MINIT 2018-01-24 09:33:32 +01:00
Dmitry Stogov 48b4e01680 Eliminate useless separations 2018-01-17 14:11:40 +03:00
Anatol Belski 83497327e7 Implement high resolution monotonic timer function hrtime() 2018-01-07 16:03:52 +01:00
Gabriel Caruso 6400264856 Trailing whitespaces
Signed-off-by: Gabriel Caruso <carusogabriel34@gmail.com>
2018-01-03 14:38:00 +01:00
Xinchen Hui a6519d0514 year++ 2018-01-02 12:57:58 +08:00
Xinchen Hui 7a7ec01a49 year++ 2018-01-02 12:55:14 +08:00
Xinchen Hui ccd4716ec7 year++ 2018-01-02 12:53:31 +08:00
Anatol Belski f3f6cd24e9 Modernize realpath and integrate quick variant into virtual_file_ex
The slower I/O as a traditional bottleneck on Windows which is
the target of this patch. The recursive path resolution, while being
an allround solution, is expensive when it comes to the common case.
Files with proper ACLs set can be resolved in one go by usage of specific
API. Those are available since Vista, so actually can be called old. Those
simpler api is used for the cases where no CWD_EXPAND is requested. For
the cases where ACLs are improper, the existing solution based on
FindFirstFile still does good job also partially providing quirks. Cases
involing reparse tags and other non local filesystems are also partially
server by new APIs.

The approach uses both APIs - the quick one for the common case still
integrating realpath cache, and the existing one as a fallback. The tests
show the I/O load drop on the realpath resolution part due to less
system calls for the sub part resolution of paths. In most case it is
justified, as the sub parts were otherwise cached or unused as well. The
realpath() implementation in ioutil is also closer to the POSIX.
2017-12-15 13:23:34 +01:00
Dmitry Stogov 9e709e2fa0 Move constants into read-only data segment 2017-12-14 18:43:44 +03:00
Dmitry Stogov dc47171523 Avoid temporary string creation and destruction. 2017-12-11 18:18:30 +03:00
Dmitry Stogov cc12acefcd Use cheaper functions 2017-12-04 13:21:35 +03:00
Dmitry Stogov 7cc6f60134 Added "argv" and "argc" as known strings.
Fixed incorrect "argc" update and corresponding phpdbg test.
2017-12-01 01:35:47 +03:00
Anatol Belski 89da3ed4d7 Merge branch 'PHP-7.2'
* PHP-7.2:
  Fix allocation
  Fix memory leak
2017-11-27 21:19:17 +01:00
Anatol Belski eb0cc77133 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix allocation
  Fix memory leak
2017-11-27 21:18:54 +01:00
Anatol Belski 06202f0feb Fix allocation 2017-11-27 21:18:08 +01:00
Anatol Belski 2868ff84df Fix memory leak 2017-11-27 20:24:30 +01:00
Anatol Belski edc77d5d00 Merge branch 'PHP-7.2'
* PHP-7.2:
  Fixed bug #75574 putenv does not work properly if parameter contains non-ASCII unicode character
2017-11-27 18:52:45 +01:00
Anatol Belski 3c0bd0014d Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #75574 putenv does not work properly if parameter contains non-ASCII unicode character
2017-11-27 18:50:05 +01:00
Anatol Belski 2b7d283cc5 Fixed bug #75574 putenv does not work properly if parameter contains non-ASCII unicode character 2017-11-27 18:49:02 +01:00
Sara Golemon 7ca5a7d84e Add net_get_interfaces() 2017-11-27 10:17:55 -05:00
Dmitry Stogov ccc12b82da Avoid unnecessary reference-counting on strings. 2017-11-16 17:09:32 +03:00
Xinchen Hui a8a17a72b0 RC manipulation cleanup 2017-11-01 10:25:10 +08:00
Dmitry Stogov fcc08ce19f Prevent reference-counting on persistent zvals (internal constants, default properties and constants of internal classes).
New macro ZVAL_COPY_OR_DUP() is used perform duplication, if necessary.
This should eliminate related race-coditions in ZTS build and prevent reference-counting bugs after unclean shutdown.
2017-10-30 23:13:10 +03:00
Dmitry Stogov 61ef91bf0d Revert "Allow internal functions to return values by reference (this was disabled in implementation of DO_ICALL, but enabled in DO_FCALL)."
This reverts commit da781a5ac2.
2017-10-17 13:25:19 +03:00
Dmitry Stogov da781a5ac2 Allow internal functions to return values by reference (this was disabled in implementation of DO_ICALL, but enabled in DO_FCALL).
However, don't require internal functions returning by reference to return a reference.
Mark unserialize() as returning by reference and remove unwrap_reference hack, to allow proper returning of self referenced arrays using a reference.
Currently unserialize() is the only internal function that may return a reference.
2017-10-17 11:50:34 +03:00
Dmitry Stogov ef5ea48741 Always use IS_CONSTANT_AST (IS_CONSTANT is removed). 2017-10-10 10:11:05 +03:00
Kalle Sommer Nielsen d3bc8beb4f Removed support for BeOS, development for BeOS was supported 17 years ago.
This patch however does not drop support for the BeOS compatible variant, Haiku, see Github PR #2697 which is currently a WiP

I intentionally left out some fragments for BeOS in the build system for that seems to be bundles
2017-08-29 22:03:56 +02:00
Kalle Sommer Nielsen 4fbff82c10 Kill compiler warnings in ext/standard 2017-08-24 01:36:14 +02:00
Anatol Belski b06caa0e5f remove casts 2017-07-30 18:23:34 +02:00
Anatol Belski 0d1eeeb68d move zend_ato*() to size_t and remove casts 2017-07-28 14:59:31 +02:00
Nikita Popov 035a27cbc6 Only compute callback name in error cases
Mostly the callback name is only used to report an error. Try to
avoid calculating it if no error occurred.
2017-06-25 18:45:59 +02:00
Dmitry Stogov 9c2a1f52a5 Avoid useless dereferences and separations during paramter passing. 2017-06-19 12:55:59 +03:00
Remi Collet 66a018ccb4 Merge branch 'PHP-7.1'
* PHP-7.1:
  NEWS
  NEWS
  Fixes bug #74708 reflection signatures for random_bytes+random_int
2017-06-13 08:15:33 +02:00
Remi Collet 3aa80c482c Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  NEWS
  Fixes bug #74708 reflection signatures for random_bytes+random_int
2017-06-13 08:14:57 +02:00
Tyson Andre 81b2533a68 Fixes bug #74708 reflection signatures for random_bytes+random_int
They have 1 and 2 required parameters, respectively
See https://secure.php.net/manual/en/function.random-int.php
2017-06-13 08:11:25 +02:00
Dmitry Stogov a08723d3d3 Use interned empty and "one char" strings. 2017-05-18 17:59:59 +03:00
Sebastian Bergmann 6035ebd4a6 Merge branch 'PHP-7.1' 2017-04-11 08:29:14 +02:00
Sebastian Bergmann 25c941807b Merge branch 'PHP-7.0' into PHP-7.1 2017-04-11 08:28:55 +02:00
Sebastian Bergmann 7cdf520319 Fix bug #74409 2017-04-11 08:27:17 +02:00
Nikita Popov e3b2b05229 Merge branch 'PHP-7.1' 2017-03-27 19:02:50 +02:00
x-xiang e9e860a05b Don't retain mt_rand() seeds across requests
In particular, this prevents manual seeding of mt_rand() to leak
across requests.
2017-03-27 19:02:39 +02:00
Nikita Popov 8015daeddb Merge branch 'PHP-7.1' 2017-03-16 12:57:43 +01:00