diff options
author | Craig Duncan <git@duncanc.co.uk> | 2016-10-04 13:27:02 +0100 |
---|---|---|
committer | Joe Watkins <krakjoe@php.net> | 2016-11-17 09:33:04 +0000 |
commit | aaf7341b1ce6889387b4dcdf5a9b04a651076bc6 (patch) | |
tree | 5739c2dcb208d928e4b1a5ce48ce30a8b331eed9 /ext | |
parent | d0bdf19eb48f4d1c23b78cb58d2f65d0bc2b6f49 (diff) | |
download | php-git-aaf7341b1ce6889387b4dcdf5a9b04a651076bc6.tar.gz |
Add warnings when counting invalid parameters
Diffstat (limited to 'ext')
-rw-r--r-- | ext/standard/array.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/ext/standard/array.c b/ext/standard/array.c index f3a7f4de84..2c51149881 100644 --- a/ext/standard/array.c +++ b/ext/standard/array.c @@ -790,6 +790,7 @@ PHP_FUNCTION(count) switch (Z_TYPE_P(array)) { case IS_NULL: + php_error_docref(NULL, E_WARNING, "Parameter must be an array or an object that implements Countable"); RETURN_LONG(0); break; case IS_ARRAY: @@ -820,8 +821,14 @@ PHP_FUNCTION(count) } return; } + + /* If There's no handler and it doesn't implement Countable then add a warning */ + php_error_docref(NULL, E_WARNING, "Parameter must be an array or an object that implements Countable"); + RETURN_LONG(1); + break; } default: + php_error_docref(NULL, E_WARNING, "Parameter must be an array or an object that implements Countable"); RETURN_LONG(1); break; } |