History log of /PHP-8.1/ext/standard/array.c (Results 301 – 325 of 1077)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 501d24f8 03-Aug-2016 Xinchen Hui

Optimized array_pad

# 81a7d528 02-Aug-2016 Xinchen Hui

Folder marks

# 70f79fd8 02-Aug-2016 Xinchen Hui

Optimized array_merge and cleanup

# e730c8fc 02-Aug-2016 Xinchen Hui

Optimized array_merge

# fea2042a 02-Aug-2016 Xinchen Hui

Optimized array_column (thanks to Benjamin Coutu)

# a15902fa 02-Aug-2016 Xinchen Hui

fixed IS_REFERENCE handling

# 4d919592 01-Aug-2016 Xinchen Hui

Optimized array_reverse

# 11e05092 29-Jul-2016 Nikita Popov

Fix memory unsafety in array_walk()

Fixes bugs #61967, #62607, #69068, #70713.

The primary changes are:
a) Use the ht_iterator mechanism to ensure safety not only if the

Fix memory unsafety in array_walk()

Fixes bugs #61967, #62607, #69068, #70713.

The primary changes are:
a) Use the ht_iterator mechanism to ensure safety not only if the
iterated array itself changes, but also if it is replaced (and
potentially destroyed) entirely. We use the same semantics for
behavior under modification as foreach-by-reference. In
particular, we advance to the next element before processing it.
If the iterated entity is exchanged we iterate the new one from
the start. If it is not an array/object we warn and abort.
b) Always create a reference to the current value. Previously the
code kept the value as a non-reference and updated it to the
reference value produced by the user callback. However this is
unsafe, as the array may have been reallocated in the meantime,
so the previous value pointer is no longer value.
c) Around a recursive walk, incref the reference containing the
array. This ensures that the location where the currently
iterated value is stored cannot be freed.

One problem I was not able to solve is that we cannot decrement
the apply count if the array is exchanged during a recursive walk.

show more ...

# 261c436d 29-Jul-2016 Nikita Popov

Merge branch 'PHP-7.0' into PHP-7.1


# 8a442a33 29-Jul-2016 Nikita Popov

Fix ref handling in array_merge/replace_recursive()

As usual, if the reference has rc=1 it really isn't a reference.

Revision tags: php-7.1.0beta1, php-5.6.24, php-7.0.9, php-5.5.38
# c35dab00 20-Jul-2016 Xinchen Hui

Merge branch 'PHP-7.0'

* PHP-7.0:
Fixed bug #72622 (array_walk + array_replace_recursive create references from nothing)


# 3c3b8c83 20-Jul-2016 Xinchen Hui

Fixed bug #72622 (array_walk + array_replace_recursive create references from nothing)

# d91e2e47 18-Jul-2016 Nikita Popov

Increase array_rand() rehashing treshold

From 3/8 to 3/4. I was thinking in terms of nTableSize, where a
requirement > 1/2 is not tenable. However, we're actually working
with nNumUs

Increase array_rand() rehashing treshold

From 3/8 to 3/4. I was thinking in terms of nTableSize, where a
requirement > 1/2 is not tenable. However, we're actually working
with nNumUsed, in which case more than 1/4 tombstones should be
quite unusual.

show more ...

# f5452b2b 18-Jul-2016 Nikita Popov

Optimize the n=1 case of array_rand()

# bb1f8228 07-Jul-2016 Leigh

Use zend_bitset

Revision tags: php-5.6.24RC1
# 06607993 06-Jul-2016 Leigh

Improve array_rand distribution

Revision tags: php-7.1.0alpha3
# 6d6ef7aa 05-Jul-2016 Leigh

Alias rand to mt_rand

Revision tags: php-7.0.9RC1
# 697e3bb4 23-Jun-2016 Xinchen Hui

Merge branch 'master' of git.php.net:/php-src

* 'master' of git.php.net:/php-src:
typo
Turn safe timeout handling into general interrupt handling ability.
Fixed compilation

Merge branch 'master' of git.php.net:/php-src

* 'master' of git.php.net:/php-src:
typo
Turn safe timeout handling into general interrupt handling ability.
Fixed compilation warnings
yet another test rewrite
Add additional LDAP SASL constants
Add tests for LDAP_OPT_* constants
Add LDAP TLS Protocol Min constants
Add tests for the LDAP CRL check option
Add missing LDAP constants

show more ...


# eb65db08 23-Jun-2016 Xinchen Hui

Use zend_sort in array_multisort (tests change is expected)

# adc95c51 23-Jun-2016 Dmitry Stogov

Fixed compilation warnings

Revision tags: php-7.1.0alpha2, php-7.0.8, php-5.6.23
# 16160386 21-Jun-2016 Dmitry Stogov

Added ZEND_ATTRIBUTE_FORMAT to some middind functions.
"%p" replaced by ZEND_LONG_FMT to avoid compilation warnings.
Fixed most incorrect use cases of format specifiers.

Revision tags: php-5.5.37
# 4042f543 20-Jun-2016 Dmitry Stogov

HANDLE_BLOCK/UNBLOCK_INTERRUPTIONS() protection on inter-process data is completely useless now.
Historicaly, these macros were introduced as a protection from execution timeout handling, but we

HANDLE_BLOCK/UNBLOCK_INTERRUPTIONS() protection on inter-process data is completely useless now.
Historicaly, these macros were introduced as a protection from execution timeout handling, but we don't need them anymore after "safe execution timeout" implementation.
These macros are still useful to protect from termination during inner process data modification, because of OS signals (e.g. SIGTERM during OPcache SHM update).

show more ...

# a9512af8 15-Jun-2016 Dmitry Stogov

Implemented RFC: Fix inconsistent behavior of $this variable
Squashed commit of the following:

commit bdd3b6895c3ce3eacfcf7d4bf4feb8dfa61801fd
Author: Dmitry Stogov <dmitry@zend.com>

Implemented RFC: Fix inconsistent behavior of $this variable
Squashed commit of the following:

commit bdd3b6895c3ce3eacfcf7d4bf4feb8dfa61801fd
Author: Dmitry Stogov <dmitry@zend.com>
Date: Thu Jun 16 00:19:42 2016 +0300

Fixed GOTO VM

commit 2f1d7c8b89ce821086d357cf65f629f040a85c03
Author: Dmitry Stogov <dmitry@zend.com>
Date: Wed Jun 15 21:01:57 2016 +0300

Removed unused variable

commit cf749c42b0b1919f70b1e7d6dcbfff76899506af
Author: Dmitry Stogov <dmitry@zend.com>
Date: Wed Jun 15 19:06:16 2016 +0300

Protection from $this reassign through mb_parse_str()

commit 59a9a6c83c66b666971e57f1173b33a422166efd
Author: Dmitry Stogov <dmitry@zend.com>
Date: Wed Jun 15 18:14:50 2016 +0300

Added type inference rule for FETCH_THIS opcode

commit 73f8d14a856f14a461430b3c7534ab2ce870cbf6
Author: Dmitry Stogov <dmitry@zend.com>
Date: Wed Jun 15 18:11:18 2016 +0300

Restored PHP-7 behavior of isset($this->foo).
It throws exception if not in object context.
Removed useless opcode handlers.

commit fa0881381e8ae97e022ae5d1ec0851c952f33c82
Author: Dmitry Stogov <dmitry@zend.com>
Date: Tue May 31 12:25:47 2016 +0300

Changed "Notice: Undefined variable: this" into "Exception: Using $this when not in object context".

commit e32cc528c0f2c97963d8ec83eff0269f1f45af18
Author: Dmitry Stogov <dmitry@zend.com>
Date: Tue May 24 02:02:43 2016 +0300

Throw exception on attempt to re-assign $this through extract() and parse_str().

commit 41f1531b52113ec8a4c208aa6b9ef50f1386bb3f
Author: Dmitry Stogov <dmitry@zend.com>
Date: Mon May 23 22:18:36 2016 +0300

Fixed inconsistent $this behavior

show more ...

# 42f23eff 13-Jun-2016 Xinchen Hui

Value should not be a reference here

# b602495e 09-Jun-2016 Dmitry Stogov

Optimization

1...<<11121314151617181920>>...44