File tree 2 files changed +22
-1
lines changed
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) /* {{{ */
230
230
static ZEND_INI_MH (OnUpdateFiberStackSize ) /* {{{ */
231
231
{
232
232
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 ;
234
239
} else {
235
240
EG (fiber_stack_size ) = ZEND_FIBER_DEFAULT_C_STACK_SIZE ;
236
241
}
You can’t perform that action at this time.
0 commit comments