Index: libs/libmythtv/videoout_opengl.cpp =================================================================== --- libs/libmythtv/videoout_opengl.cpp (revision 26433) +++ libs/libmythtv/videoout_opengl.cpp (working copy) @@ -224,6 +224,7 @@ gl_context = new MythRenderOpenGL(fmt, device); if (gl_context && gl_context->create()) { + gl_context->InitStuff(); success = true; VERBOSE(VB_GENERAL, LOC + QString("Created MythRenderOpenGL device.")); } Index: libs/libmythtv/vsync.cpp =================================================================== --- libs/libmythtv/vsync.cpp (revision 26433) +++ libs/libmythtv/vsync.cpp (working copy) @@ -380,6 +380,7 @@ m_context = new MythRenderOpenGL(fmt, m_device); if (m_context && m_context->create()) { + m_context->InitStuff(); if (m_context->HasGLXWaitVideoSyncSGI()) return true; Index: libs/libmythui/mythmainwindow.cpp =================================================================== --- libs/libmythui/mythmainwindow.cpp (revision 26433) +++ libs/libmythui/mythmainwindow.cpp (working copy) @@ -936,6 +936,8 @@ delete d->paintwin; d->paintwin = NULL; } + else + d->render->InitStuff(); } else #endif Index: libs/libmythui/mythrender_opengl.h =================================================================== --- libs/libmythui/mythrender_opengl.h (revision 26433) +++ libs/libmythui/mythrender_opengl.h (working copy) @@ -128,6 +128,8 @@ unsigned int GetVideoSyncCount(void); void WaitForVideoSync(int div, int rem, unsigned int *count); + void InitStuff(void); + private: void Init2DState(void); void InitProcs(void); Index: libs/libmythui/mythrender_opengl.cpp =================================================================== --- libs/libmythui/mythrender_opengl.cpp (revision 26433) +++ libs/libmythui/mythrender_opengl.cpp (working copy) @@ -134,14 +134,17 @@ return false; } + if (ok) + VERBOSE(VB_GENERAL, LOC + "Initialised MythRenderOpenGL"); + return ok; +} + +void MythRenderOpenGL::InitStuff(void) +{ OpenGLLocker locker(this); InitProcs(); Init2DState(); InitFeatures(); - - if (ok) - VERBOSE(VB_GENERAL, LOC + "Initialised MythRenderOpenGL"); - return ok; } void MythRenderOpenGL::makeCurrent()