From 9000c0465020c698e7ecebbe2f326c689f3ec112 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C3=A4r-Olof=20H=C3=A5kansson?= Date: Fri, 11 Dec 2015 10:47:00 +0100 Subject: QSGDefaultImageNode: Only set DirtyGeometry if new texture QSGDefaultImageNode::preprocess() always sets the geometry to dirty even if no new texture was grabbed. Change-Id: Ifb6ce160854aa0a5b9e0f87fbf517b21e86e0ade Task-number: QTBUG-49904 Reviewed-by: Gunnar Sletta --- src/quick/scenegraph/qsgdefaultimagenode.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/quick/scenegraph/qsgdefaultimagenode.cpp b/src/quick/scenegraph/qsgdefaultimagenode.cpp index 0591d0fe2f..1f0b0fa9da 100644 --- a/src/quick/scenegraph/qsgdefaultimagenode.cpp +++ b/src/quick/scenegraph/qsgdefaultimagenode.cpp @@ -287,7 +287,8 @@ void QSGDefaultImageNode::preprocess() QSGDynamicTexture *t = qobject_cast(m_material.texture()); if (t) { doDirty = t->updateTexture(); - updateGeometry(); + if (doDirty) + updateGeometry(); } bool alpha = m_material.flags() & QSGMaterial::Blending; if (m_material.texture() && alpha != m_material.texture()->hasAlphaChannel()) { -- cgit v1.2.3