Move the creation of the GLInterface (and hence the video backend

window) from VideoPrepare to Initialize in the software plugin (as in
the GL plugin).  This fixes issue 6564.  It also makes the emulator show
up positioned correctly in the dolphin application window when using
render to main.
This commit is contained in:
Glenn Rice 2013-09-07 15:57:32 -05:00
parent 508888c935
commit 913853d441
1 changed files with 5 additions and 8 deletions

View File

@ -39,7 +39,6 @@ namespace SW
static volatile bool fifoStateRun = false;
static volatile bool emuRunningState = false;
static std::mutex m_csSWVidOccupied;
static void* m_windowhandle;
std::string VideoSoftware::GetName()
{
@ -64,7 +63,11 @@ bool VideoSoftware::Initialize(void *&window_handle)
g_SWVideoConfig.Load((File::GetUserPath(D_CONFIG_IDX) + "gfx_software.ini").c_str());
InitInterface();
m_windowhandle = window_handle;
if (!GLInterface->Create(window_handle))
{
INFO_LOG(VIDEO, "%s", "SWRenderer::Create failed\n");
return false;
}
InitBPMemory();
InitXFMemory();
@ -160,12 +163,6 @@ void VideoSoftware::Video_Cleanup()
// This is called after Video_Initialize() from the Core
void VideoSoftware::Video_Prepare()
{
if (!GLInterface->Create(m_windowhandle))
{
INFO_LOG(VIDEO, "%s", "SWRenderer::Create failed\n");
return;
}
GLInterface->MakeCurrent();
// Init extension support.
#ifndef USE_GLES