sw_engine: skip the rendering if possible.

zero scale would not produce any visible artifacts.
we can skip the further processing sonner.
This commit is contained in:
Hermet Park 2023-09-12 12:46:44 +09:00 committed by Hermet Park
parent 2257211852
commit 46d831ead7

View file

@ -741,6 +741,12 @@ void* SwRenderer::prepareCommon(SwTask* task, const RenderTransform* transform,
task->transform = nullptr;
}
//zero size?
if (task->transform) {
if (task->transform->e11 == 0.0f && task->transform->e12 == 0.0f) return task; //zero width
if (task->transform->e21 == 0.0f && task->transform->e22 == 0.0f) return task; //zero height
}
task->opacity = opacity;
task->surface = surface;
task->mpool = mpool;