Dmitry Stogov
76d8f3923e
Revert HASH_FLAG_INITIALIZED into HASH_FLAG_UNINITIALIZED.
2018-12-28 11:22:18 +03:00
Dmitry Stogov
675a8a64c3
Use HT_IS_INITIALIZED() and HT_INVALIDATE() macros instead of hackish HT_FLAGS assumtions.
2018-12-27 22:48:25 +03:00
Zeev Suraski
54dc07f3dc
Update email addresses. We're still @Zend, but future proofing it...
2018-11-01 17:20:07 +02:00
Dmitry Stogov
27b0fecd2e
Turn zend_hash_exists() into inline function
2018-09-19 13:55:53 +03:00
Dmitry Stogov
cd9f0a22fc
Perform run-time binding reusing HashTable bucket (without new bucket insertion).
2018-08-29 00:35:07 +03:00
Peter Kokot
8d3f8ca12a
Remove unused Git attributes ident
...
The $Id$ keywords were used in Subversion where they can be substituted
with filename, last revision number change, last changed date, and last
user who changed it.
In Git this functionality is different and can be done with Git attribute
ident. These need to be defined manually for each file in the
.gitattributes file and are afterwards replaced with 40-character
hexadecimal blob object name which is based only on the particular file
contents.
This patch simplifies handling of $Id$ keywords by removing them since
they are not used anymore.
2018-07-25 00:53:25 +02:00
Dmitry Stogov
ebd1f5af3e
API cleanup.
...
Removed useless filename and lineno arguments, used in DEBUG build.
The patch doesn't break source compatibility of public API (only binary compatibility).
2018-07-23 15:24:07 +03:00
Dmitry Stogov
3b6e1ee4ee
Improved "Fast Shutdown".
2018-07-17 17:31:04 +03:00
Dmitry Stogov
0b90cf85a6
Removed "dead" code (zend_hash_update() never fails)
2018-06-01 11:58:57 +03:00
Dmitry Stogov
0d72bb8fcb
Optimize zend_new_array() for special case, when size <= HT_MIN_SIZE
2018-05-31 01:17:55 +03:00
Dmitry Stogov
4df89a31b0
Eliminate useless checks
2018-04-04 02:12:26 +03:00
Dmitry Stogov
a795bd8265
Optimize zend_hash_real_init()
2018-03-23 00:13:45 +03:00
Dmitry Stogov
d7f2dc4ec6
Improve HashTable iterators handling:
...
- Avoid iterators check/update on each HashTable update opration
- Keep position equal (or above) nNumUsed instead of HT_INVALID_IDX
- Fixed iterators handling in array_unshift()
2018-03-22 02:41:49 +03:00
Dmitry Stogov
a4109e1f4c
Added expectation
2018-03-06 23:22:01 +03:00
Dmitry Stogov
6fb5568b2d
Merge HashTable.u.v.consistency into HashTable.u.v.flags
2018-01-22 15:32:34 +03:00
Dmitry Stogov
ebf900a9eb
Introduce mcros to access HashTable iterators counter
2018-01-22 14:14:35 +03:00
Dmitry Stogov
9cbb521094
Access HashTable.u.flags through HT_FLAGS() macro.
2018-01-22 13:36:15 +03:00
Dmitry Stogov
742d5a01ed
Get rid of IS_TYPE_COPYABLE.
2018-01-19 17:47:26 +03:00
Dmitry Stogov
c533396ce4
Strength reduction
2018-01-10 14:23:43 +03:00
Dmitry Stogov
20a1124f63
Added expectation
2018-01-10 12:37:13 +03:00
Gabriel Caruso
6687e8db15
Trailing whitespaces on Zend
...
Signed-off-by: Gabriel Caruso <carusogabriel34@gmail.com>
2018-01-04 02:41:57 -02:00
Xinchen Hui
a6519d0514
year++
2018-01-02 12:57:58 +08:00
Xinchen Hui
4dfbfe93aa
Use cheaper API
2017-12-18 11:55:14 +08:00
Li-Wen Hsu
72ec23d823
Fix bug #75677 : Drop fastcall attribute on variadic function
...
Fastcall generally doesn't make sense on variadic functions. For
clang in particular this eliminates a "fastcall calling convention
ignored on variadic function" warning.
2017-12-15 21:56:08 +01:00
Dmitry Stogov
ec2dde0c0b
Introduced zend_hash_find_ex() that may avoid unnecessary hash value check.
2017-11-24 14:01:19 +03:00
Dmitry Stogov
2e83924682
Added zend_hash_add_new_mem/zend_hash_str_add_new_mem. Use them to add new elements into PCRE cache (we checked the existance before).
2017-10-31 10:43:10 +03:00
Dmitry Stogov
9cf87aa196
Avoid HashTable allocations for empty arrays (using zend_empty_array).
2017-10-24 17:27:31 +03:00
Dmitry Stogov
254b74b85f
HASH_FLAG_PERSISTENT renamed into IS_ARRAY_PERSISTENT and moved into GC_FLAGS (to be consistent with IS_STR_PERSISTENT).
2017-10-06 02:54:14 +03:00
Dmitry Stogov
cb9d81ef4f
Refactored recursion pretection
2017-10-06 01:34:50 +03:00
Dmitry Stogov
44e0b79ac6
Refactored array creation API. array_init() and array_init_size() are converted into macros calling zend_new_array(). They are not functions anymore and don't return any values.
2017-09-20 02:25:56 +03:00
Sara Golemon
ff04db4420
Merge branch 'PHP-7.1' into PHP-7.2
...
* PHP-7.1:
Fix typo in zend_symtable_add_new() API name
2017-09-07 16:29:57 -04:00
Sara Golemon
9369843ee2
Merge branch 'PHP-7.0' into PHP-7.1
...
* PHP-7.0:
Fix typo in zend_symtable_add_new() API name
2017-09-07 16:26:45 -04:00
Sara Golemon
f18cf46d07
Fix typo in zend_symtable_add_new() API name
2017-09-07 16:25:25 -04:00
Anatol Belski
bc5811f361
further sync for vim mode lines
2017-07-04 18:12:45 +02:00
Nikita Popov
ee8e75aab4
Extract zend_get_callable_name() API
...
Instead of interleaving this inside zend_is_callable(), implement
this in a separate function instead.
Also add _deref() hash APIs. I've wanted these for a while, and
this is another place where they're useful, so finally do it...
2017-06-25 18:26:03 +02:00
Dmitry Stogov
40ed9aaa48
Reuse "nIndex"
2017-06-23 14:23:00 +03:00
Dmitry Stogov
f25ecdacf8
shutdown_executor() refactoring (reuse opcache fast request shutdown code)
2017-06-22 01:45:28 +03:00
Nikita Popov
795a4c1bb3
Merge branch 'PHP-7.1'
2017-02-02 18:35:35 +01:00
Nikita Popov
e81f30ad1d
Merge branch 'PHP-7.0' into PHP-7.1
2017-02-02 18:33:42 +01:00
Mitch Hagstrand
dd9cf23457
BUG #73998 : Numeric properties are not accessible from get_object_vars
2017-02-02 18:33:10 +01:00
Nikita Popov
fd4025069d
Enable HT RC assertions with escape-hatch
...
HT functions that modify the array now assert that rc=1. As we don't
respect this COW constraint everywhere, either for a good reason or
because fixing it would take more work, we provide an escape hatch
in the form of HT_ALLOW_COW_VIOLATION(ht). If this macro is called
assertions on this ht are disabled. The macro is a no-op in release
mode.
2017-01-23 17:19:06 +00:00
Sammy Kaye Powers
dac6c639bb
Update copyright headers to 2017
2017-01-04 11:23:42 -06:00
Sammy Kaye Powers
478f119ab9
Update copyright headers to 2017
2017-01-04 11:14:55 -06:00
Sammy Kaye Powers
9e29f841ce
Update copyright headers to 2017
2017-01-02 09:30:12 -06:00
Dmitry Stogov
42407692b6
Merge branch 'PHP-7.1'
...
* PHP-7.1:
Fixed bug #73586 (php_user_filter::$stream is not set to the stream the filter is working on).
2016-11-28 12:57:36 +03:00
Dmitry Stogov
cabcf8971f
Merge branch 'PHP-7.0' into PHP-7.1
...
* PHP-7.0:
Fixed bug #73586 (php_user_filter::$stream is not set to the stream the filter is working on).
2016-11-28 12:57:02 +03:00
Dmitry Stogov
9a9ad56af0
Fixed bug #73586 (php_user_filter::$stream is not set to the stream the filter is working on).
2016-11-28 12:54:47 +03:00
Anatol Belski
b204b3abd1
further normalizations, uint vs uint32_t
...
fix merge mistake
yet one more replacement run
2016-11-26 17:29:01 +01:00
Andrea Faulds
a0502b89a6
Convert numeric keys in object/array casts
...
RFC: https://wiki.php.net/rfc/convert_numeric_keys_in_object_array_casts
This converts key types as appropriate in object to array and array to object
casts, as well as in get_object_vars().
2016-11-14 18:20:45 +00:00
Dmitry Stogov
9ded1b4edb
Introduced HT_IS_PACKED() and HT_IS_WITHOUT_HOLES() macros. (Benjamin Coutu)
2016-10-19 23:10:42 +03:00