summaryrefslogtreecommitdiffstats
path: root/src/gui/opengl/qopenglshaderprogram.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/opengl/qopenglshaderprogram.cpp')
-rw-r--r--src/gui/opengl/qopenglshaderprogram.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/gui/opengl/qopenglshaderprogram.cpp b/src/gui/opengl/qopenglshaderprogram.cpp
index 69b4fc9858..c0899e5a41 100644
--- a/src/gui/opengl/qopenglshaderprogram.cpp
+++ b/src/gui/opengl/qopenglshaderprogram.cpp
@@ -510,7 +510,7 @@ class QOpenGLShaderProgramPrivate : public QObjectPrivate
{
Q_DECLARE_PUBLIC(QOpenGLShaderProgram)
public:
- QOpenGLShaderProgramPrivate(QOpenGLContext *ctx)
+ QOpenGLShaderProgramPrivate()
: programGuard(0)
, linked(false)
, inited(false)
@@ -518,7 +518,7 @@ public:
, geometryVertexCount(64)
, geometryInputType(0)
, geometryOutputType(0)
- , glfuncs(new QOpenGLFunctions(ctx))
+ , glfuncs(new QOpenGLFunctions)
{
}
~QOpenGLShaderProgramPrivate();
@@ -574,7 +574,7 @@ bool QOpenGLShaderProgramPrivate::hasShader(QOpenGLShader::ShaderType type) cons
\sa addShader()
*/
QOpenGLShaderProgram::QOpenGLShaderProgram(QObject *parent)
- : QObject(*new QOpenGLShaderProgramPrivate(QOpenGLContext::currentContext()), parent)
+ : QObject(*new QOpenGLShaderProgramPrivate, parent)
{
}
@@ -594,6 +594,7 @@ bool QOpenGLShaderProgram::init()
QOpenGLContext *context = const_cast<QOpenGLContext *>(QOpenGLContext::currentContext());
if (!context)
return false;
+ d->glfuncs->initializeGLFunctions();
GLuint program = d->glfuncs->glCreateProgram();
if (!program) {
qWarning() << "QOpenGLShaderProgram: could not create shader program";