File tree Expand file tree Collapse file tree 2 files changed +22
-1
lines changed
Expand file tree Collapse file tree 2 files changed +22
-1
lines changed Original file line number Diff line number Diff line change 1+ --TEST--
2+ fiber.stack_size must be a positive number
3+ --FILE--
4+ <?php
5+ ini_set ("fiber.stack_size " ,"-1 " );
6+ $ fiber = new Fiber (function () {});
7+ try {
8+ $ fiber ->start ();
9+ } catch (Throwable $ e ) {
10+ echo "Exception: " . $ e ->getMessage ()."\n" ;
11+ }
12+ ?>
13+ DONE
14+ --EXPECTF--
15+ Warning: fiber.stack_size must be a positive number in %snegative_stack_size.php on line 2
16+ DONE
Original file line number Diff line number Diff line change @@ -230,7 +230,12 @@ static ZEND_INI_MH(OnUpdateReservedStackSize) /* {{{ */
230230static ZEND_INI_MH (OnUpdateFiberStackSize ) /* {{{ */
231231{
232232 if (new_value ) {
233- EG (fiber_stack_size ) = zend_ini_parse_uquantity_warn (new_value , entry -> name );
233+ zend_long tmp = zend_ini_parse_quantity_warn (new_value , entry -> name );
234+ if (tmp < 0 ) {
235+ zend_error (E_WARNING , "fiber.stack_size must be a positive number" );
236+ return FAILURE ;
237+ }
238+ EG (fiber_stack_size ) = tmp ;
234239 } else {
235240 EG (fiber_stack_size ) = ZEND_FIBER_DEFAULT_C_STACK_SIZE ;
236241 }
You can’t perform that action at this time.
0 commit comments