diff --git a/NEWS b/NEWS index 04b986bcb8353..ee37e2fe806a1 100644 --- a/NEWS +++ b/NEWS @@ -26,6 +26,8 @@ PHP NEWS generating uniform integers within a given range). (timwolla) . Fixed bug GH-9089 (Fix memory leak on Randomizer::__construct() call twice) (zeriyoshi) + . Change Mt19937 to throw a ValueError instead of InvalidArgumentException + for invalid $mode. (timwolla) - Sockets: . Added SOL_FILTER socket option for Solaris. (David Carlier) diff --git a/ext/random/engine_mt19937.c b/ext/random/engine_mt19937.c index 760d0df90363b..6a48e1e464f55 100644 --- a/ext/random/engine_mt19937.c +++ b/ext/random/engine_mt19937.c @@ -273,7 +273,7 @@ PHP_METHOD(Random_Engine_Mt19937, __construct) state->mode = MT_RAND_PHP; break; default: - zend_argument_error(spl_ce_InvalidArgumentException, 2, "mode must be MT_RAND_MT19937 or MT_RAND_PHP"); + zend_argument_value_error(2, "mode must be MT_RAND_MT19937 or MT_RAND_PHP"); RETURN_THROWS(); } diff --git a/ext/random/tests/02_engine/mt19937_error.phpt b/ext/random/tests/02_engine/mt19937_error.phpt index fe72bb8898c27..0b9468b698dbf 100644 --- a/ext/random/tests/02_engine/mt19937_error.phpt +++ b/ext/random/tests/02_engine/mt19937_error.phpt @@ -5,8 +5,8 @@ Random: Engine: Mt19937: error pattern try { new \Random\Engine\Mt19937(1234, 2); -} catch (\InvalidArgumentException $e) { - echo $e->getMessage() . PHP_EOL; +} catch (\ValueError $e) { + echo $e->getMessage(), PHP_EOL; } ?>