diff options
author | Marcus Boerger <helly@php.net> | 2004-04-25 11:25:25 +0000 |
---|---|---|
committer | Marcus Boerger <helly@php.net> | 2004-04-25 11:25:25 +0000 |
commit | c5abb9b24c49b096cb307f6ffba595dfed45f312 (patch) | |
tree | 4b0ec92ab14ae3094bc488e1a924ef90b46cddd8 | |
parent | 286f75c891dcb642cbd36f2a22e01b606fd1fc29 (diff) | |
download | php-git-c5abb9b24c49b096cb307f6ffba595dfed45f312.tar.gz |
Capture potential problem by error message
-rwxr-xr-x | Zend/zend_interfaces.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/Zend/zend_interfaces.c b/Zend/zend_interfaces.c index c20cfea2cf..2d755191fa 100755 --- a/Zend/zend_interfaces.c +++ b/Zend/zend_interfaces.c @@ -186,6 +186,13 @@ static int zend_user_it_get_current_key(zend_object_iterator *_iter, char **str_ zend_call_method_with_0_params(&object, iter->ce, &iter->ce->iterator_funcs.zf_key, "key", &retval); + if (!retval) { + *str_key = ""; + *str_key_len = 0; + *int_key = 0; + zend_error(E_WARNING, "Nothing returned from %s::key()", iter->ce->name); + return HASH_KEY_IS_LONG; + } switch (retval->type) { default: zend_error(E_WARNING, "Illegal type returned from %s::key()", iter->ce->name); |