Fixed crash in QOpenGLFramebufferObject.
AMD's Catalyst driver returns true in glIsRenderbuffer() for a newly gen'ed render buffer. Change-Id: I177425dc4b94923431cec5f89175c63782819eef Reviewed-on: http://codereview.qt-project.org/5522 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
This commit is contained in:
parent
eddd87826e
commit
d7836ec1bd
@ -470,7 +470,6 @@ void QOpenGLFramebufferObjectPrivate::init(QOpenGLFramebufferObject *, const QSi
|
||||
{
|
||||
// depth and stencil buffer needs another extension
|
||||
funcs.glGenRenderbuffers(1, &depth_buffer);
|
||||
Q_ASSERT(!funcs.glIsRenderbuffer(depth_buffer));
|
||||
funcs.glBindRenderbuffer(GL_RENDERBUFFER, depth_buffer);
|
||||
Q_ASSERT(funcs.glIsRenderbuffer(depth_buffer));
|
||||
if (samples != 0 && funcs.hasOpenGLExtension(QOpenGLExtensions::FramebufferMultisample))
|
||||
@ -497,7 +496,6 @@ void QOpenGLFramebufferObjectPrivate::init(QOpenGLFramebufferObject *, const QSi
|
||||
|| (attachment == QOpenGLFramebufferObject::Depth)))
|
||||
{
|
||||
funcs.glGenRenderbuffers(1, &depth_buffer);
|
||||
Q_ASSERT(!funcs.glIsRenderbuffer(depth_buffer));
|
||||
funcs.glBindRenderbuffer(GL_RENDERBUFFER, depth_buffer);
|
||||
Q_ASSERT(funcs.glIsRenderbuffer(depth_buffer));
|
||||
if (samples != 0 && funcs.hasOpenGLExtension(QOpenGLExtensions::FramebufferMultisample)) {
|
||||
@ -537,7 +535,6 @@ void QOpenGLFramebufferObjectPrivate::init(QOpenGLFramebufferObject *, const QSi
|
||||
|
||||
if (stencil_buffer == 0 && (attachment == QOpenGLFramebufferObject::CombinedDepthStencil)) {
|
||||
funcs.glGenRenderbuffers(1, &stencil_buffer);
|
||||
Q_ASSERT(!funcs.glIsRenderbuffer(stencil_buffer));
|
||||
funcs.glBindRenderbuffer(GL_RENDERBUFFER, stencil_buffer);
|
||||
Q_ASSERT(funcs.glIsRenderbuffer(stencil_buffer));
|
||||
if (samples != 0 && funcs.hasOpenGLExtension(QOpenGLExtensions::FramebufferMultisample)) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user