@@ -238,8 +238,8 @@ PHP_RSHUTDOWN_FUNCTION(pcntl)
238
238
239
239
/* Reset all signals to their default disposition */
240
240
ZEND_HASH_FOREACH_NUM_KEY_VAL (& PCNTL_G (php_signal_table ), signo , handle ) {
241
- if (Z_TYPE_P (handle ) != IS_LONG || Z_LVAL_P (handle ) != (zend_long )SIG_DFL ) {
242
- php_signal (signo , (Sigfunc * )(zend_long )SIG_DFL , 0 );
241
+ if (Z_TYPE_P (handle ) != IS_LONG || Z_LVAL_P (handle ) != (zend_long )( intptr_t ) SIG_DFL ) {
242
+ php_signal (signo , (Sigfunc * )(intptr_t )SIG_DFL , 0 );
243
243
}
244
244
} ZEND_HASH_FOREACH_END ();
245
245
@@ -825,11 +825,11 @@ PHP_FUNCTION(pcntl_signal)
825
825
826
826
/* Special long value case for SIG_DFL and SIG_IGN */
827
827
if (Z_TYPE_P (handle ) == IS_LONG ) {
828
- if (Z_LVAL_P (handle ) != (zend_long ) SIG_DFL && Z_LVAL_P (handle ) != (zend_long ) SIG_IGN ) {
828
+ if (Z_LVAL_P (handle ) != (zend_long )( intptr_t ) SIG_DFL && Z_LVAL_P (handle ) != (zend_long )( intptr_t ) SIG_IGN ) {
829
829
zend_argument_value_error (2 , "must be either SIG_DFL or SIG_IGN when an integer value is given" );
830
830
RETURN_THROWS ();
831
831
}
832
- if (php_signal (signo , (Sigfunc * ) Z_LVAL_P (handle ), (int ) restart_syscalls ) == (void * )SIG_ERR ) {
832
+ if (php_signal (signo , (Sigfunc * )( intptr_t ) Z_LVAL_P (handle ), (int ) restart_syscalls ) == (void * )SIG_ERR ) {
833
833
PCNTL_G (last_error ) = errno ;
834
834
php_error_docref (NULL , E_WARNING , "Error assigning signal" );
835
835
RETURN_FALSE ;
@@ -885,7 +885,7 @@ PHP_FUNCTION(pcntl_signal_get_handler)
885
885
if ((prev_handle = zend_hash_index_find (& PCNTL_G (php_signal_table ), signo )) != NULL ) {
886
886
RETURN_COPY (prev_handle );
887
887
} else {
888
- RETURN_LONG ((zend_long )SIG_DFL );
888
+ RETURN_LONG ((zend_long )( intptr_t ) SIG_DFL );
889
889
}
890
890
}
891
891
@@ -1151,11 +1151,11 @@ static void pcntl_siginfo_to_zval(int signo, siginfo_t *siginfo, zval *user_sigi
1151
1151
case SIGFPE :
1152
1152
case SIGSEGV :
1153
1153
case SIGBUS :
1154
- add_assoc_double_ex (user_siginfo , "addr" , sizeof ("addr" )- 1 , (zend_long )siginfo -> si_addr );
1154
+ add_assoc_double_ex (user_siginfo , "addr" , sizeof ("addr" )- 1 , (zend_long )( intptr_t ) siginfo -> si_addr );
1155
1155
break ;
1156
1156
#if defined(SIGPOLL ) && !defined(__CYGWIN__ )
1157
1157
case SIGPOLL :
1158
- add_assoc_long_ex (user_siginfo , "band" , sizeof ("band" )- 1 , siginfo -> si_band );
1158
+ add_assoc_long_ex (user_siginfo , "band" , sizeof ("band" )- 1 , ( zend_long )( intptr_t ) siginfo -> si_band );
1159
1159
# ifdef si_fd
1160
1160
add_assoc_long_ex (user_siginfo , "fd" , sizeof ("fd" )- 1 , siginfo -> si_fd );
1161
1161
# endif
0 commit comments