SvgLoader: Prevent underflow when stack.cnt is 0

If graphic node is directly located in the <svg>(root) node,
it may cause underflow because stack.cnt is 0.
This commit is contained in:
JunsuChoi 2020-09-02 17:10:50 +09:00 committed by Hermet Park
parent 7aff026276
commit c15103e033

View file

@ -1963,7 +1963,8 @@ static void _svgLoaderParserXmlOpen(SvgLoaderData* loader, const char* content,
loader->stack.push(node);
}
} else if ((method = _findGraphicsFactory(tagName))) {
parent = loader->stack.list[loader->stack.cnt - 1];
if (loader->stack.cnt > 0) parent = loader->stack.list[loader->stack.cnt - 1];
else parent = loader->doc;
node = method(loader, parent, attrs, attrsLength);
} else if ((gradientMethod = _findGradientFactory(tagName))) {
SvgStyleGradient* gradient;