summaryrefslogtreecommitdiffstats
path: root/src/datavisualization/utils/shaderhelper.cpp
diff options
context:
space:
mode:
authorTomi Korpipää <tomi.korpipaa@digia.com>2013-10-25 12:36:58 +0300
committerTomi Korpipää <tomi.korpipaa@digia.com>2013-10-25 12:41:52 +0300
commitae279ce977e7c45e6afcf4ec4d4484a813857909 (patch)
treef95734b990c8f1a9a9d90d823c86d5b62e02367c /src/datavisualization/utils/shaderhelper.cpp
parent034ddfcbc09aabeb1a2cc63c82f7396e906d3b53 (diff)
Tech preview RC fixes
Change-Id: I5a47053c8708b9a9c37b845bc55166f02fc99de3 Change-Id: I5a47053c8708b9a9c37b845bc55166f02fc99de3 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Diffstat (limited to 'src/datavisualization/utils/shaderhelper.cpp')
-rw-r--r--src/datavisualization/utils/shaderhelper.cpp19
1 files changed, 16 insertions, 3 deletions
diff --git a/src/datavisualization/utils/shaderhelper.cpp b/src/datavisualization/utils/shaderhelper.cpp
index 7df1736c..e27103af 100644
--- a/src/datavisualization/utils/shaderhelper.cpp
+++ b/src/datavisualization/utils/shaderhelper.cpp
@@ -22,6 +22,14 @@
QT_DATAVISUALIZATION_BEGIN_NAMESPACE
+void discardDebugMsgs(QtMsgType type, const QMessageLogContext &context, const QString &msg)
+{
+ Q_UNUSED(type)
+ Q_UNUSED(context)
+ Q_UNUSED(msg)
+ // Used to discard warnings generated during shader test compilation
+}
+
ShaderHelper::ShaderHelper(QObject *parent,
const QString &vertexShader,
const QString &fragmentShader,
@@ -88,14 +96,19 @@ void ShaderHelper::initialize()
bool ShaderHelper::testCompile()
{
+ bool result = true;
+ // Discard warnings, we only need the result
+ QtMessageHandler handler = qInstallMessageHandler(discardDebugMsgs);
if (m_program)
delete m_program;
m_program = new QOpenGLShaderProgram(m_caller);
if (!m_program->addShaderFromSourceFile(QOpenGLShader::Vertex, m_vertexShaderFile))
- return false;
+ result = false;
if (!m_program->addShaderFromSourceFile(QOpenGLShader::Fragment, m_fragmentShaderFile))
- return false;
- return true;
+ result = false;
+ // Restore actual message handler
+ qInstallMessageHandler(handler);
+ return result;
}
void ShaderHelper::bind()