lottie/vector: use callback version of intersect() for performance. 83/184783/3
authorsubhransu mohanty <sub.mohanty@samsung.com>
Mon, 23 Jul 2018 06:10:51 +0000 (15:10 +0900)
committerSubhransu Mohanty <sub.mohanty@samsung.com>
Tue, 24 Jul 2018 08:01:58 +0000 (08:01 +0000)
Change-Id: I194f1da65b766e59c4c5230040b8a329a39fa95b

src/vector/vpainter.cpp

index 64d0790..6d3beab 100644 (file)
@@ -19,12 +19,8 @@ void VPainterImpl::drawRle(const VPoint &pos, const VRle &rle)
 
     if (!mSpanData.mUnclippedBlendFunc) return;
 
-    // apply clip if any
-    VRle final = rle.intersected(mSpanData.mSystemClip);
-
-    if (final.isEmpty()) return;
-
-    mSpanData.mUnclippedBlendFunc(final.size(), final.data(), &mSpanData);
+    // do draw after applying clip.
+    rle.intersect(mSpanData.mSystemClip, mSpanData.mUnclippedBlendFunc, &mSpanData);
 }
 
 VPainter::~VPainter()