ext/pcntl: pcntl_sigprocmask/pcntl_getcpuaffinity to packed arrays. (#18369)

This commit is contained in:
David CARLIER 2025-04-20 23:23:56 +01:00 committed by GitHub
parent b385e0dd2b
commit 158181ff37
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -956,6 +956,7 @@ PHP_FUNCTION(pcntl_sigprocmask)
RETURN_THROWS(); RETURN_THROWS();
} }
zend_hash_real_init_packed(Z_ARRVAL_P(user_old_set));
for (unsigned int signal_no = 1; signal_no < PCNTL_G(num_signals); ++signal_no) { for (unsigned int signal_no = 1; signal_no < PCNTL_G(num_signals); ++signal_no) {
if (sigismember(&old_set, signal_no) != 1) { if (sigismember(&old_set, signal_no) != 1) {
continue; continue;
@ -1680,6 +1681,7 @@ PHP_FUNCTION(pcntl_getcpuaffinity)
zend_ulong maxcpus = (zend_ulong)sysconf(_SC_NPROCESSORS_CONF); zend_ulong maxcpus = (zend_ulong)sysconf(_SC_NPROCESSORS_CONF);
array_init(return_value); array_init(return_value);
zend_hash_real_init_packed(Z_ARRVAL_P(return_value));
for (zend_ulong i = 0; i < maxcpus; i ++) { for (zend_ulong i = 0; i < maxcpus; i ++) {
if (PCNTL_CPU_ISSET(i, mask)) { if (PCNTL_CPU_ISSET(i, mask)) {