Fixed: Update also Depth and Frequency with default resolution

This commit is contained in:
kervala 2015-11-05 17:18:14 +01:00
parent 4f64daeee4
commit d0c869c64f

View file

@ -948,14 +948,28 @@ void prelogInit()
return;
}
// used to determine screen default resolution
if (ClientCfg.Width < 800 || ClientCfg.Height < 600)
{
UDriver::CMode mode;
CConfigFile::CVar *varPtr = NULL;
if (!ClientCfg.Windowed && Driver->getCurrentScreenMode(mode))
{
ClientCfg.Width = mode.Width;
ClientCfg.Height = mode.Height;
ClientCfg.Depth = mode.Depth;
ClientCfg.Frequency = mode.Frequency;
// update client.cfg with detected depth and frequency
varPtr = ClientCfg.ConfigFile.getVarPtr("Depth");
if(varPtr)
varPtr->forceAsInt(ClientCfg.Depth);
varPtr = ClientCfg.ConfigFile.getVarPtr("Frequency");
if(varPtr)
varPtr->forceAsInt(ClientCfg.Frequency);
}
else
{
@ -964,7 +978,7 @@ void prelogInit()
}
// update client.cfg with detected resolution
CConfigFile::CVar *varPtr = ClientCfg.ConfigFile.getVarPtr("Width");
varPtr = ClientCfg.ConfigFile.getVarPtr("Width");
if(varPtr)
varPtr->forceAsInt(ClientCfg.Width);