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

1411 Commits

Author SHA1 Message Date
Dmitry Stogov 0b90cf85a6 Removed "dead" code (zend_hash_update() never fails) 2018-06-01 11:58:57 +03:00
Dmitry Stogov 5eb1f92f31 Use zend_string_release_ex() instread of zend_string_release() in places, where we sure about string persistence. 2018-05-28 16:27:12 +03:00
Dmitry Stogov 524f5245c5 Avoid useless checks, using zend_string_efree(), in cases where the string is known to be a temporary allocated zend_string. 2018-05-08 17:30:15 +03:00
Christoph M. Becker 9993304da4 Merge branch 'PHP-7.2'
* PHP-7.2:
  Fix arginfo for array_replace(_recursive) and array_merge(_recursive)
2018-04-13 15:36:15 +02:00
Christoph M. Becker 3770c2e463 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix arginfo for array_replace(_recursive) and array_merge(_recursive)
2018-04-13 15:28:47 +02:00
Gabriel Caruso bb79e5764b Fix arginfo for array_replace(_recursive) and array_merge(_recursive) 2018-04-13 15:27:16 +02:00
Chris Wright 658a23a974 Remove warnings from inet_pton()/inet_ntop() 2018-04-03 14:51:47 +01:00
timurib f7f48643e7 Remove redundant warning in array_push() and array_unshift()
Cf. https://github.com/php/php-src/pull/3011.
2018-03-25 17:49:04 +02:00
Gabriel Caruso d0ee2a8254 Add is_countable function
RFC: https://wiki.php.net/rfc/is-countable
2018-03-11 16:41:16 +01:00
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