From: Marcus Boerger Date: Tue, 31 Aug 2004 20:56:08 +0000 (+0000) Subject: MFH: Fix seeking X-Git-Tag: php-5.0.2RC1~51 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=df93e470ccf3c41696b97a7d627ca67261f7c641;p=php MFH: Fix seeking --- diff --git a/ext/spl/spl_array.c b/ext/spl/spl_array.c index 901bd35552..34645a18ef 100755 --- a/ext/spl/spl_array.c +++ b/ext/spl/spl_array.c @@ -716,7 +716,7 @@ SPL_METHOD(Array, seek) zend_hash_internal_pointer_reset_ex(aht, &intern->pos); - while (position-- > 0 && spl_array_next(intern TSRMLS_CC)); + while (position-- > 0 && spl_array_next(intern TSRMLS_CC) == SUCCESS); } /* }}} */ int spl_array_object_count_elements(zval *object, long *count TSRMLS_DC) /* {{{ */ @@ -737,9 +737,8 @@ int spl_array_object_count_elements(zval *object, long *count TSRMLS_DC) /* {{{ pos = intern->pos; *count = 0; zend_hash_internal_pointer_reset_ex(aht, &intern->pos); - while(intern->pos) { + while(intern->pos && spl_array_next(intern TSRMLS_CC) == SUCCESS) { (*count)++; - spl_array_next(intern TSRMLS_CC); } intern->pos = pos; return SUCCESS;