diff options
Diffstat (limited to 'src/declarative/items/qsgshadereffectsource.cpp')
-rw-r--r-- | src/declarative/items/qsgshadereffectsource.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/declarative/items/qsgshadereffectsource.cpp b/src/declarative/items/qsgshadereffectsource.cpp index 199a56067e..217b0e67a7 100644 --- a/src/declarative/items/qsgshadereffectsource.cpp +++ b/src/declarative/items/qsgshadereffectsource.cpp @@ -206,7 +206,13 @@ void QSGShaderEffectTexture::markDirtyTexture() void QSGShaderEffectTexture::grab() { - Q_ASSERT(m_item); + if (!m_item || m_size.isNull()) { + delete m_fbo; + delete m_secondaryFbo; + m_fbo = m_secondaryFbo = 0; + m_dirtyTexture = false; + return; + } QSGNode *root = m_item; while (root->childCount() && root->type() != QSGNode::RootNodeType) root = root->childAtIndex(0); |