Revert "Create our OGL context on the same thread in the OpenGL backend. Same issue with Qualcomm not working with threading correctly."

This reverts commit 2697b8c04f.

The context creation may be moved to Video_Prepare, but the window creation isn't allowed to.
Eg we set the window title or read the mouse position, both need the window.
Also the readback of the window size didn't worked any more.
This commit is contained in:
degasus 2013-06-19 09:17:33 +02:00
parent 02cbcc8ec4
commit fb310f2247
2 changed files with 10 additions and 18 deletions

View File

@ -24,10 +24,7 @@ namespace OGL
// Draw messages on top of the screen // Draw messages on top of the screen
unsigned int VideoBackend::PeekMessages() unsigned int VideoBackend::PeekMessages()
{ {
if (GLInterface) return GLInterface->PeekMessages();
return GLInterface->PeekMessages();
else
return 0;
} }
// Show the current FPS // Show the current FPS

View File

@ -89,7 +89,6 @@ Make AA apply instantly during gameplay if possible
namespace OGL namespace OGL
{ {
static void* m_windowhandle;
std::string VideoBackend::GetName() std::string VideoBackend::GetName()
{ {
@ -150,12 +149,12 @@ void VideoBackend::ShowConfig(void *_hParent)
diag.ShowModal(); diag.ShowModal();
#endif #endif
} }
bool VideoBackend::Initialize(void *&window_handle) bool VideoBackend::Initialize(void *&window_handle)
{ {
InitializeShared(); InitializeShared();
InitBackendInfo(); InitBackendInfo();
m_windowhandle = window_handle;
frameCount = 0; frameCount = 0;
g_Config.Load((File::GetUserPath(D_CONFIG_IDX) + "gfx_opengl.ini").c_str()); g_Config.Load((File::GetUserPath(D_CONFIG_IDX) + "gfx_opengl.ini").c_str());
@ -164,7 +163,13 @@ bool VideoBackend::Initialize(void *&window_handle)
g_Config.VerifyValidity(); g_Config.VerifyValidity();
UpdateActiveConfig(); UpdateActiveConfig();
InitInterface();
if (!GLInterface->Create(window_handle))
return false;
// Do our OSD callbacks
OSD::DoCallbacks(OSD::OSD_INIT);
s_BackendInitialized = true; s_BackendInitialized = true;
return true; return true;
@ -174,16 +179,6 @@ bool VideoBackend::Initialize(void *&window_handle)
// Run from the graphics thread // Run from the graphics thread
void VideoBackend::Video_Prepare() void VideoBackend::Video_Prepare()
{ {
InitInterface();
if (!GLInterface->Create(m_windowhandle))
{
INFO_LOG(VIDEO, "%s", "GLInterface::Create failed\n");
return;
}
// Do our OSD callbacks
OSD::DoCallbacks(OSD::OSD_INIT);
GLInterface->MakeCurrent(); GLInterface->MakeCurrent();
g_renderer = new Renderer; g_renderer = new Renderer;