From b385e0dd2b54cc914b1fa707d6e3cbff794b4806 Mon Sep 17 00:00:00 2001 From: David CARLIER Date: Sun, 20 Apr 2025 23:23:43 +0100 Subject: [PATCH] ext/posix: preallocate arrays and/or change to packed ones. (#18370) --- ext/posix/posix.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/ext/posix/posix.c b/ext/posix/posix.c index d465e523093..68d47840c5e 100644 --- a/ext/posix/posix.c +++ b/ext/posix/posix.c @@ -236,10 +236,11 @@ PHP_FUNCTION(posix_getgroups) RETURN_FALSE; } - array_init(return_value); + array_init_size(return_value, result); + zend_hash_real_init_packed(Z_ARRVAL_P(return_value)); for (i=0; igr_name); if (g->gr_passwd) { @@ -1174,7 +1176,8 @@ PHP_FUNCTION(posix_getrlimit) RETURN_FALSE; } - array_init(return_value); + array_init_size(return_value, 2); + zend_hash_real_init_packed(Z_ARRVAL_P(return_value)); if (rl.rlim_cur == RLIM_INFINITY) { add_next_index_stringl(return_value, UNLIMITED_STRING, sizeof(UNLIMITED_STRING)-1); } else {