diff options
author | Jesus Fernandez <jesus.fernandez@qt.io> | 2017-05-30 18:51:03 +0200 |
---|---|---|
committer | Jesus Fernandez <Jesus.Fernandez@qt.io> | 2017-06-16 12:18:04 +0000 |
commit | 6f2bdb816dc816461cf3888eb732f71904b6a7ab (patch) | |
tree | 97948f1821bef7f802400f8e38583a262f50ab07 /src/quick/scenegraph | |
parent | 158ba2d958a5099a381661abf775db4ff3ce75e9 (diff) |
Add check in buffer creation
Checks if the buffer was created successfully in
QSGDefaultDistanceFieldGlyphCache::QSGDefaultDistanceFieldGlyphCache.
In case of error shows a warning.
Change-Id: I14565c411bbe1081f87b809ea417c44f8cefd9c5
Reviewed-by: Gunnar Sletta <gunnar@crimson.no>
Diffstat (limited to 'src/quick/scenegraph')
-rw-r--r-- | src/quick/scenegraph/qsgdefaultdistancefieldglyphcache.cpp | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/quick/scenegraph/qsgdefaultdistancefieldglyphcache.cpp b/src/quick/scenegraph/qsgdefaultdistancefieldglyphcache.cpp index ba25172d2f..7789ef8fb1 100644 --- a/src/quick/scenegraph/qsgdefaultdistancefieldglyphcache.cpp +++ b/src/quick/scenegraph/qsgdefaultdistancefieldglyphcache.cpp @@ -71,12 +71,15 @@ QSGDefaultDistanceFieldGlyphCache::QSGDefaultDistanceFieldGlyphCache(QOpenGLCont , m_coreFuncs(0) #endif { - m_blitBuffer.create(); - m_blitBuffer.bind(); - static GLfloat buffer[16] = {-1.0f, -1.0f, 1.0f, -1.0f, 1.0f, 1.0f, -1.0f, 1.0f, - 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, 1.0f, 0.0f, 1.0f}; - m_blitBuffer.allocate(buffer, sizeof(buffer)); - m_blitBuffer.release(); + if (Q_LIKELY(m_blitBuffer.create())) { + m_blitBuffer.bind(); + static const GLfloat buffer[16] = {-1.0f, -1.0f, 1.0f, -1.0f, 1.0f, 1.0f, -1.0f, 1.0f, + 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, 1.0f, 0.0f, 1.0f}; + m_blitBuffer.allocate(buffer, sizeof(buffer)); + m_blitBuffer.release(); + } else { + qWarning("Buffer creation failed"); + } m_areaAllocator = new QSGAreaAllocator(QSize(maxTextureSize(), m_maxTextureCount * maxTextureSize())); } |