| Index: Source/platform/transforms/TransformationMatrix.cpp
|
| diff --git a/Source/platform/transforms/TransformationMatrix.cpp b/Source/platform/transforms/TransformationMatrix.cpp
|
| index 4403d3e7ec91180ff8865f15023b1a11d25ce89b..172d0bf4a96dd446b977526b8fdf537aee7eaa21 100644
|
| --- a/Source/platform/transforms/TransformationMatrix.cpp
|
| +++ b/Source/platform/transforms/TransformationMatrix.cpp
|
| @@ -1364,8 +1364,11 @@ void TransformationMatrix::blend(const TransformationMatrix& from, double progre
|
| // decompose
|
| DecomposedType fromDecomp;
|
| DecomposedType toDecomp;
|
| - from.decompose(fromDecomp);
|
| - decompose(toDecomp);
|
| + if (!from.decompose(fromDecomp) || !decompose(toDecomp)) {
|
| + if (progress < 0.5)
|
| + *this = from;
|
| + return;
|
| + }
|
|
|
| // interpolate
|
| blendFloat(fromDecomp.scaleX, toDecomp.scaleX, progress);
|
|
|