summaryrefslogtreecommitdiffstats
path: root/thirdparty/thorvg/src/renderer/tvgRender.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'thirdparty/thorvg/src/renderer/tvgRender.cpp')
-rw-r--r--thirdparty/thorvg/src/renderer/tvgRender.cpp19
1 files changed, 6 insertions, 13 deletions
diff --git a/thirdparty/thorvg/src/renderer/tvgRender.cpp b/thirdparty/thorvg/src/renderer/tvgRender.cpp
index 9768b5ede0..64d76d3562 100644
--- a/thirdparty/thorvg/src/renderer/tvgRender.cpp
+++ b/thirdparty/thorvg/src/renderer/tvgRender.cpp
@@ -39,12 +39,9 @@ void RenderTransform::override(const Matrix& m)
}
-bool RenderTransform::update()
+void RenderTransform::update()
{
- if (overriding) return true;
-
- //Init Status
- if (mathZero(x) && mathZero(y) && mathZero(degree) && mathEqual(scale, 1)) return false;
+ if (overriding) return;
mathIdentity(&m);
@@ -53,17 +50,13 @@ bool RenderTransform::update()
if (!mathZero(degree)) mathRotate(&m, degree);
mathTranslate(&m, x, y);
-
- return true;
-}
-
-
-RenderTransform::RenderTransform()
-{
}
RenderTransform::RenderTransform(const RenderTransform* lhs, const RenderTransform* rhs)
{
- m = mathMultiply(&lhs->m, &rhs->m);
+ if (lhs && rhs) m = mathMultiply(&lhs->m, &rhs->m);
+ else if (lhs) m = lhs->m;
+ else if (rhs) m = rhs->m;
+ else mathIdentity(&m);
}