mirror of
https://github.com/thorvg/thorvg.git
synced 2025-06-14 20:14:37 +00:00
svg_loader: fix grad update
The grad update should be handled after the postponed nodes are cloned.
This commit is contained in:
parent
1f6c236fa3
commit
333ff25c7e
1 changed files with 3 additions and 3 deletions
|
@ -2857,14 +2857,14 @@ void SvgLoader::run(unsigned tid)
|
||||||
if (loaderData.doc) {
|
if (loaderData.doc) {
|
||||||
_updateStyle(loaderData.doc, nullptr);
|
_updateStyle(loaderData.doc, nullptr);
|
||||||
auto defs = loaderData.doc->node.doc.defs;
|
auto defs = loaderData.doc->node.doc.defs;
|
||||||
if (defs) _updateGradient(loaderData.doc, &defs->node.defs.gradients);
|
|
||||||
|
|
||||||
if (loaderData.gradients.count > 0) _updateGradient(loaderData.doc, &loaderData.gradients);
|
|
||||||
|
|
||||||
_updateComposite(loaderData.doc, loaderData.doc);
|
_updateComposite(loaderData.doc, loaderData.doc);
|
||||||
if (defs) _updateComposite(loaderData.doc, defs);
|
if (defs) _updateComposite(loaderData.doc, defs);
|
||||||
|
|
||||||
if (loaderData.cloneNodes.count > 0) _clonePostponedNodes(&loaderData.cloneNodes);
|
if (loaderData.cloneNodes.count > 0) _clonePostponedNodes(&loaderData.cloneNodes);
|
||||||
|
|
||||||
|
if (loaderData.gradients.count > 0) _updateGradient(loaderData.doc, &loaderData.gradients);
|
||||||
|
if (defs) _updateGradient(loaderData.doc, &defs->node.defs.gradients);
|
||||||
}
|
}
|
||||||
root = svgSceneBuild(loaderData.doc, vx, vy, vw, vh, w, h, preserveAspect, svgPath);
|
root = svgSceneBuild(loaderData.doc, vx, vy, vw, vh, w, h, preserveAspect, svgPath);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue