diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/gui/opengl/qopenglshaderprogram.cpp | 12 | ||||
-rw-r--r-- | src/opengl/qglshaderprogram.cpp | 10 |
2 files changed, 13 insertions, 9 deletions
diff --git a/src/gui/opengl/qopenglshaderprogram.cpp b/src/gui/opengl/qopenglshaderprogram.cpp index 1cde0cb92d..8278e4fb5a 100644 --- a/src/gui/opengl/qopenglshaderprogram.cpp +++ b/src/gui/opengl/qopenglshaderprogram.cpp @@ -907,11 +907,13 @@ bool QOpenGLShaderProgram::link() GLint len; d->glfuncs->glGetProgramInfoLog(program, value, &len, logbuf); d->log = QString::fromLatin1(logbuf); - QString name = objectName(); - if (name.isEmpty()) - qWarning() << "QOpenGLShader::link:" << d->log; - else - qWarning() << "QOpenGLShader::link[" << name << "]:" << d->log; + if (!d->linked) { + QString name = objectName(); + if (name.isEmpty()) + qWarning() << "QOpenGLShader::link:" << d->log; + else + qWarning() << "QOpenGLShader::link[" << name << "]:" << d->log; + } delete [] logbuf; } return d->linked; diff --git a/src/opengl/qglshaderprogram.cpp b/src/opengl/qglshaderprogram.cpp index 4859df21d6..e7b7ad1348 100644 --- a/src/opengl/qglshaderprogram.cpp +++ b/src/opengl/qglshaderprogram.cpp @@ -957,10 +957,12 @@ bool QGLShaderProgram::link() d->glfuncs->glGetProgramInfoLog(program, value, &len, logbuf); d->log = QString::fromLatin1(logbuf); QString name = objectName(); - if (name.isEmpty()) - qWarning() << "QGLShader::link:" << d->log; - else - qWarning() << "QGLShader::link[" << name << "]:" << d->log; + if (!d->linked) { + if (name.isEmpty()) + qWarning() << "QGLShader::link:" << d->log; + else + qWarning() << "QGLShader::link[" << name << "]:" << d->log; + } delete [] logbuf; } return d->linked; |