Skip to content

Commit

Permalink
Fix crash at exit
Browse files Browse the repository at this point in the history
  • Loading branch information
Xottab-DUTY committed Apr 2, 2019
1 parent e796fca commit 3f731f4
Showing 1 changed file with 24 additions and 16 deletions.
40 changes: 24 additions & 16 deletions cs/engine/xrEngine/EngineAPI.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -161,7 +161,8 @@ void CEngineAPI::CreateRendererList()
bSupports_r2 = true;
bSupports_r2_5 = true;
bSupports_r3 = true;
}
bSupports_gl = true;
}
else
{
// try to initialize R2
Expand Down Expand Up @@ -189,21 +190,26 @@ void CEngineAPI::CreateRendererList()
R_ASSERT(test_dx10_rendering);
bSupports_r3 = test_dx10_rendering();
FreeLibrary(hRender);
}
}

// try to initialize GL
Log("Loading DLL:", gl_name);
hRender = LoadLibrary(gl_name);
if (hRender)
bSupports_gl = true;

hRender = 0;
}

// try to initialize GL
Log("Loading DLL:", gl_name);
if (strstr(Core.Params, "-gl"))
hRender = LoadLibrary(gl_name);
if (hRender)
{
bSupports_gl = true;
// XXX: Why it crashes? Fix!
//FreeLibrary(hRender);
}
}

hRender = nullptr;

xr_vector<LPCSTR> _tmp;
u32 i = 0;
bool bBreakLoop = false;
for(; i<5; ++i)
for(; i<6; ++i)
{
switch (i)
{
Expand All @@ -219,6 +225,10 @@ void CEngineAPI::CreateRendererList()
if (!bSupports_r3)
bBreakLoop = true;
break;
case 5: //"renderer_r_ogl"
if (!bSupports_gl)
bBreakLoop = true;
break;
default: ;
}

Expand All @@ -232,15 +242,13 @@ void CEngineAPI::CreateRendererList()
case 1: val ="renderer_r2a"; break;
case 2: val ="renderer_r2"; break;
case 3: val ="renderer_r2.5"; break;
case 4: val ="renderer_r3"; break; // -)
case 4: val ="renderer_r3"; break;
case 5: val = "renderer_gl"; break;
}
if (bBreakLoop) break;
_tmp.back() = xr_strdup(val);
}

if (bSupports_gl)
_tmp.push_back("renderer_gl");

u32 _cnt = _tmp.size()+1;
vid_quality_token = xr_alloc<xr_token>(_cnt);

Expand Down

0 comments on commit 3f731f4

Please sign in to comment.