Skip to content

stack overflow in dom #23117

Description

@djarfluka

Description

The following code:

<?php
$xml = str_repeat('<a>', 500000) . 'x' . str_repeat('</a>', 500000);
$d=\Dom\XMLDocument::createFromString($xml, LIBXML_PARSEHUGE);
$d->normalize();

Resulted in this output:

    #219 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #220 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #221 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #222 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #223 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #224 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #225 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #226 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #227 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #228 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #229 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #230 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #231 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #232 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #233 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #234 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #235 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #236 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #237 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #238 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #239 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #240 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #241 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #242 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #243 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #244 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #245 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #246 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #247 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973
    #248 0x55c57cadafa7 in php_dom_normalize_modern /home/php-src/ext/dom/php_dom.c:1973

SUMMARY: AddressSanitizer: stack-overflow /home/php-src/ext/dom/php_dom.c:1973 in php_dom_normalize_modern
==43==ABORTING
USE_ZEND_ALLOC=0

PHP Version

8.6.0

Operating System

ubuntu 22.04

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions