diff options
| author | Dmitry Stogov <dmitry@zend.com> | 2017-10-30 12:04:15 +0300 |
|---|---|---|
| committer | Dmitry Stogov <dmitry@zend.com> | 2017-10-30 12:04:15 +0300 |
| commit | 2065d51a18e3aa4e08ff806b5a8994fd4ad05746 (patch) | |
| tree | d9b0b006b4ac9e2cca588280786933491e7ccc53 /ext/dom/dom_iterators.c | |
| parent | 1f5c0fad21e84af36c833a935693a357636d2a2d (diff) | |
| download | php-git-2065d51a18e3aa4e08ff806b5a8994fd4ad05746.tar.gz | |
Better fix for bug #75451 (Assertion fails while foreach on empty xpath query)
Diffstat (limited to 'ext/dom/dom_iterators.c')
| -rw-r--r-- | ext/dom/dom_iterators.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/ext/dom/dom_iterators.c b/ext/dom/dom_iterators.c index 02f1e3c472..27bd960c4a 100644 --- a/ext/dom/dom_iterators.c +++ b/ext/dom/dom_iterators.c @@ -197,8 +197,8 @@ static void php_dom_iterator_move_forward(zend_object_iterator *iter) /* {{{ */ objmap->nodetype != XML_NOTATION_NODE) { if (objmap->nodetype == DOM_NODESET) { nodeht = HASH_OF(&objmap->baseobj_zv); - zend_hash_move_forward(nodeht); - if ((entry = zend_hash_get_current_data(nodeht))) { + zend_hash_move_forward_ex(nodeht, &iterator->pos); + if ((entry = zend_hash_get_current_data_ex(nodeht, &iterator->pos))) { zval_ptr_dtor(&iterator->curobj); ZVAL_UNDEF(&iterator->curobj); ZVAL_COPY(&iterator->curobj, entry); @@ -281,8 +281,8 @@ zend_object_iterator *php_dom_get_iterator(zend_class_entry *ce, zval *object, i objmap->nodetype != XML_NOTATION_NODE) { if (objmap->nodetype == DOM_NODESET) { nodeht = HASH_OF(&objmap->baseobj_zv); - zend_hash_internal_pointer_reset(nodeht); - if ((entry = zend_hash_get_current_data(nodeht))) { + zend_hash_internal_pointer_reset_ex(nodeht, &iterator->pos); + if ((entry = zend_hash_get_current_data_ex(nodeht, &iterator->pos))) { ZVAL_COPY(&iterator->curobj, entry); } } else { |
