Skip to content

(#942): Fix crash when XML files get recursively included through XInclude

There is a new limit, MAX_XINCLUDE_DEPTH, which is a constant with the maximum level of nesting for XInclude.

We keep a counter of the current nesting level in XmlStateInner, and check against the limit every time we need to xinclude another XML document.

The sample file has <xi:include parse="xml" href=""/> which properly causes the same file to be included, per https://www.w3.org/TR/xinclude-11/#include_element

The href attribute is optional; the absence of this attribute is the same as specifying href="", that is, the reference is to the same document.

Fixes #942 (closed)

Merge request reports