@@ -208,21 +208,19 @@ void CEngineAPI::Destroy(void)
208208
209209void CEngineAPI::CreateRendererList ()
210210{
211+ if (!vid_quality_token.empty ())
212+ return ;
213+
211214 hRenderR1 = XRay::LoadModule (" xrRender_R1" );
212215
213- xr_vector<xr_token> modes;
214216 if (GEnv.isDedicatedServer )
215217 {
216218 R_ASSERT2 (hRenderR1->IsLoaded (), " Dedicated server needs xrRender_R1 to work" );
217- modes.emplace_back (xr_token (" renderer_r1" , 0 ));
218- modes.emplace_back (xr_token (nullptr , -1 ));
219- vid_quality_token = std::move (modes);
219+ vid_quality_token.emplace_back (xr_token (" renderer_r1" , 0 ));
220+ vid_quality_token.emplace_back (xr_token (nullptr , -1 ));
220221 return ;
221222 }
222223
223- if (!vid_quality_token.empty ())
224- return ;
225-
226224 // Hide "d3d10.dll not found" message box for XP
227225 SetErrorMode (SEM_FAILCRITICALERRORS);
228226
@@ -234,6 +232,8 @@ void CEngineAPI::CreateRendererList()
234232 // Restore error handling
235233 SetErrorMode (0 );
236234
235+ auto & modes = vid_quality_token;
236+
237237 if (hRenderR1->IsLoaded ())
238238 {
239239 modes.emplace_back (xr_token (" renderer_r1" , 0 ));
@@ -252,30 +252,28 @@ void CEngineAPI::CreateRendererList()
252252 if (GEnv.CheckR3 && GEnv.CheckR3 ())
253253 modes.emplace_back (xr_token (" renderer_r3" , 4 ));
254254 else
255- hRenderR3->С lose ();
255+ hRenderR3->Close ();
256256 }
257257
258258 if (hRenderR4->IsLoaded ())
259259 {
260260 if (GEnv.CheckR4 && GEnv.CheckR4 ())
261261 modes.emplace_back (xr_token (" renderer_r4" , 5 ));
262262 else
263- hRenderR4->С lose ();
263+ hRenderR4->Close ();
264264 }
265265
266266 if (hRenderRGL->IsLoaded ())
267267 {
268268 if (GEnv.CheckRGL && GEnv.CheckRGL ())
269269 modes.emplace_back (xr_token (" renderer_gl" , 6 ));
270270 else
271- hRenderRGL->С lose ();
271+ hRenderRGL->Close ();
272272 }
273273 modes.emplace_back (xr_token (nullptr , -1 ));
274274
275275 Msg (" Available render modes[%d]:" , modes.size ());
276276 for (const auto & mode : modes)
277277 if (mode.name )
278278 Log (mode.name );
279-
280- vid_quality_token = std::move (modes);
281279}
0 commit comments