Merge branch 'PHP-8.4'

* PHP-8.4:
  Fix uninitialized memory accesses in DOM iterator
This commit is contained in:
Niels Dossche 2025-03-08 11:12:40 +01:00
commit 2a6122c54a
No known key found for this signature in database
GPG key ID: B8A8AD166DF0E2E5

View file

@ -269,15 +269,13 @@ zend_object_iterator *php_dom_get_iterator(zend_class_entry *ce, zval *object, i
zend_throw_error(NULL, "An iterator cannot be used with foreach by reference");
return NULL;
}
iterator = emalloc(sizeof(php_dom_iterator));
iterator = emalloc(sizeof(*iterator));
memset(iterator, 0, sizeof(*iterator));
zend_iterator_init(&iterator->intern);
iterator->cache_tag.modification_nr = 0;
ZVAL_OBJ_COPY(&iterator->intern.data, Z_OBJ_P(object));
iterator->intern.funcs = &php_dom_iterator_funcs;
ZVAL_UNDEF(&iterator->curobj);
intern = Z_DOMOBJ_P(object);
objmap = (dom_nnodemap_object *)intern->ptr;
if (objmap != NULL) {