mirror of
https://github.com/php/php-src.git
synced 2025-08-15 13:38:49 +02:00
ext/sockets: using array optimisations. (#18367)
mostly explicit packed arrays.
This commit is contained in:
parent
2c3a2da48a
commit
68d54030a1
2 changed files with 4 additions and 1 deletions
|
@ -1024,6 +1024,7 @@ static void to_zval_read_control_array(const char *msghdr_c, zval *zv, res_conte
|
|||
uint32_t i = 1;
|
||||
|
||||
array_init(zv);
|
||||
zend_hash_real_init_packed(Z_ARRVAL_P(zv));
|
||||
|
||||
for (cmsg = CMSG_FIRSTHDR(msg);
|
||||
cmsg != NULL && !ctx->err.has_error;
|
||||
|
|
|
@ -1973,6 +1973,7 @@ PHP_FUNCTION(socket_get_option)
|
|||
size_t arrlen = optlen / sizeof(struct fil_info);
|
||||
|
||||
array_init_size(return_value, arrlen);
|
||||
zend_hash_real_init_packed(Z_ARRVAL_P(return_value));
|
||||
|
||||
for (i = 0; i < arrlen; i++) {
|
||||
add_index_string(return_value, i, fi[i].fi_name);
|
||||
|
@ -2373,7 +2374,7 @@ PHP_FUNCTION(socket_create_pair)
|
|||
RETURN_FALSE;
|
||||
}
|
||||
|
||||
fds_array_zval = zend_try_array_init(fds_array_zval);
|
||||
fds_array_zval = zend_try_array_init_size(fds_array_zval, 2);
|
||||
if (!fds_array_zval) {
|
||||
zval_ptr_dtor(&retval[0]);
|
||||
zval_ptr_dtor(&retval[1]);
|
||||
|
@ -2776,6 +2777,7 @@ PHP_FUNCTION(socket_addrinfo_lookup)
|
|||
}
|
||||
|
||||
array_init(return_value);
|
||||
zend_hash_real_init_packed(Z_ARRVAL_P(return_value));
|
||||
|
||||
for (rp = result; rp != NULL; rp = rp->ai_next) {
|
||||
if (rp->ai_family != AF_UNSPEC) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue