aboutsummaryrefslogtreecommitdiffstats
path: root/src/effects/qquickmultieffect.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/effects/qquickmultieffect.cpp')
-rw-r--r--src/effects/qquickmultieffect.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/effects/qquickmultieffect.cpp b/src/effects/qquickmultieffect.cpp
index 6b20c3fa14..7561649fbf 100644
--- a/src/effects/qquickmultieffect.cpp
+++ b/src/effects/qquickmultieffect.cpp
@@ -1697,11 +1697,12 @@ void QQuickMultiEffectPrivate::updateBlurItemsAmount(int blurLevel)
}
// Set the blur items source components
- static const auto dummyShaderSource = new QQuickShaderEffectSource(q);
+ if (!m_dummyShaderSource)
+ m_dummyShaderSource = new QQuickShaderEffectSource(q);
for (int i = 0; i < m_blurEffects.size(); i++) {
auto *blurEffect = m_blurEffects[i];
auto sourceItem = (i >= itemsAmount) ?
- static_cast<QQuickItem *>(dummyShaderSource) : (i == 0) ?
+ static_cast<QQuickItem *>(m_dummyShaderSource) : (i == 0) ?
static_cast<QQuickItem *>(m_shaderSource->output()) :
static_cast<QQuickItem *>(m_blurEffects[i - 1]);
auto sourceVariant = QVariant::fromValue<QQuickItem*>(sourceItem);