mike Tue May 30 17:40:52 2006 UTC Modified files: (Branch: PHP_5_2) /php-src NEWS /php-src/ext/pcntl pcntl.c Log: - fix bug #37635 (parameter of pcntl signal handler is trashed) http://cvs.php.net/viewcvs.cgi/php-src/NEWS?r1=1.2027.2.547.2.65&r2=1.2027.2.547.2.66&diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.65 php-src/NEWS:1.2027.2.547.2.66 --- php-src/NEWS:1.2027.2.547.2.65 Tue May 30 14:51:20 2006 +++ php-src/NEWS Tue May 30 17:40:52 2006 @@ -49,10 +49,11 @@ - Added RFC2397 (data: stream) support. (Marcus) - Fixed memory leaks in openssl streams context options (Pierre) - Fixed handling of extremely long paths inside tempnam() function. (Ilia) +- Fixed bug #37635 (parameter of pcntl signal handler is trashed). (Mike) - Fixed bug #37632 (Protected method access problem). (Marcus) -- Fixed bug #37616: DATE_RFC822 does not product RFC 822 dates. (Hannes - Magnusson, Derick) - Fixed bug #37620 (mysqli_ssl_set validation is innappropriate). (Georg) +- Fixed bug #37616 (DATE_RFC822 does not product RFC 822 dates). + (Hannes Magnusson, Derick) - Fixed bug #37614 (Class name lowercased in error message). (Johannes) - Fixed bug #37587 (var without attribute causes segfault). (Marcus) - Fixed bug #37586 (Bumped minimum PCRE version to 6.6, needed for recursion http://cvs.php.net/viewcvs.cgi/php-src/ext/pcntl/pcntl.c?r1=1.48.2.2&r2=1.48.2.2.2.1&diff_format=u Index: php-src/ext/pcntl/pcntl.c diff -u php-src/ext/pcntl/pcntl.c:1.48.2.2 php-src/ext/pcntl/pcntl.c:1.48.2.2.2.1 --- php-src/ext/pcntl/pcntl.c:1.48.2.2 Sun Jan 1 12:50:10 2006 +++ php-src/ext/pcntl/pcntl.c Tue May 30 17:40:52 2006 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: pcntl.c,v 1.48.2.2 2006/01/01 12:50:10 sniper Exp $ */ +/* $Id: pcntl.c,v 1.48.2.2.2.1 2006/05/30 17:40:52 mike Exp $ */ #define PCNTL_DEBUG 0 @@ -693,16 +693,19 @@ PCNTL_G(head) = NULL; /* simple stores are atomic */ /* Allocate */ - MAKE_STD_ZVAL(param); - MAKE_STD_ZVAL(retval); while (queue) { if (zend_hash_index_find(&PCNTL_G(php_signal_table), queue->signo, (void **) &handle)==SUCCESS) { + MAKE_STD_ZVAL(retval); + MAKE_STD_ZVAL(param); + ZVAL_NULL(retval); ZVAL_LONG(param, queue->signo); /* Call php signal handler - Note that we do not report errors, and we ignore the return value */ /* FIXME: this is probably broken when multiple signals are handled in this while loop (retval) */ call_user_function(EG(function_table), NULL, *handle, retval, 1, ¶m TSRMLS_CC); + zval_ptr_dtor(¶m); + zval_ptr_dtor(&retval); } next = queue->next; @@ -713,10 +716,6 @@ /* Re-enable queue */ PCNTL_G(processing_signal_queue) = 0; - - /* Clean up */ - efree(param); - efree(retval); }
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php