@@ -236,10 +236,11 @@ PHP_FUNCTION(posix_getgroups)
236
236
RETURN_FALSE ;
237
237
}
238
238
239
- array_init (return_value );
239
+ array_init_size (return_value , result );
240
+ zend_hash_real_init_packed (Z_ARRVAL_P (return_value ));
240
241
241
242
for (i = 0 ; i < result ; i ++ ) {
242
- add_next_index_long (return_value , gidlist [i ]);
243
+ add_index_long (return_value , i , gidlist [i ]);
243
244
}
244
245
efree (gidlist );
245
246
}
@@ -380,7 +381,7 @@ PHP_FUNCTION(posix_times)
380
381
RETURN_FALSE ;
381
382
}
382
383
383
- array_init (return_value );
384
+ array_init_size (return_value , 5 );
384
385
385
386
add_assoc_long (return_value , "ticks" , ticks ); /* clock ticks */
386
387
add_assoc_long (return_value , "utime" , t .tms_utime ); /* user time */
@@ -670,6 +671,7 @@ int php_posix_group_to_array(struct group *g, zval *array_group) /* {{{ */
670
671
return 0 ;
671
672
672
673
array_init (& array_members );
674
+ zend_hash_real_init_packed (Z_ARRVAL (array_members ));
673
675
674
676
add_assoc_string (array_group , "name" , g -> gr_name );
675
677
if (g -> gr_passwd ) {
@@ -1174,7 +1176,8 @@ PHP_FUNCTION(posix_getrlimit)
1174
1176
RETURN_FALSE ;
1175
1177
}
1176
1178
1177
- array_init (return_value );
1179
+ array_init_size (return_value , 2 );
1180
+ zend_hash_real_init_packed (Z_ARRVAL_P (return_value ));
1178
1181
if (rl .rlim_cur == RLIM_INFINITY ) {
1179
1182
add_next_index_stringl (return_value , UNLIMITED_STRING , sizeof (UNLIMITED_STRING )- 1 );
1180
1183
} else {
0 commit comments