diff options
| author | Marcus Boerger <helly@php.net> | 2005-10-03 09:14:30 +0000 |
|---|---|---|
| committer | Marcus Boerger <helly@php.net> | 2005-10-03 09:14:30 +0000 |
| commit | 184309c2e9615e71bcd7bf2fd20421f6d0414bad (patch) | |
| tree | 9cc3bf5c5f9d066fba2806b4fdfd39c981f1f76d /ext/spl/spl_array.c | |
| parent | 594fd87ca7f14d527147871d39247f376235254d (diff) | |
| download | php-git-184309c2e9615e71bcd7bf2fd20421f6d0414bad.tar.gz | |
- MFH Fix issue with RecursiveArrayIterator::getChildren()
Diffstat (limited to 'ext/spl/spl_array.c')
| -rwxr-xr-x | ext/spl/spl_array.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/ext/spl/spl_array.c b/ext/spl/spl_array.c index e62b2ad10f..f1cb7ab650 100755 --- a/ext/spl/spl_array.c +++ b/ext/spl/spl_array.c @@ -1186,6 +1186,10 @@ SPL_METHOD(Array, getChildren) if (zend_hash_get_current_data_ex(aht, (void **) &entry, &intern->pos) == FAILURE) { return; } + + if (Z_TYPE_PP(entry) == IS_OBJECT && instanceof_function(Z_OBJCE_PP(entry), Z_OBJCE_P(getThis()) TSRMLS_CC)) { + RETURN_ZVAL(*entry, 0, 0); + } spl_instantiate_arg_ex1(Z_OBJCE_P(getThis()), &return_value, 0, *entry TSRMLS_CC); } |
