Fix #8711: having gui_zoom lower than zoom_min causes crashes (#8835)

gui_zoom was never clamp'd between zoom_min/zoom_max.

zoom_min controls how zoomed-in we load sprites. For a value of 1,
no quad-sizes sprites are loaded. If gui_zoom would be 0, meaning
it wants quad-sized sprites to display, it was printing random
stuff to the screen, which could or could not result in crashes.
pull/238/head
Patric Stout 3 years ago committed by GitHub
parent 160a5f2fdd
commit 098d5b2239
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -1893,7 +1893,9 @@ void UpdateGUIZoom()
if (_gui_zoom_cfg == ZOOM_LVL_CFG_AUTO) {
_gui_zoom = static_cast<ZoomLevel>(Clamp(VideoDriver::GetInstance()->GetSuggestedUIZoom(), _settings_client.gui.zoom_min, _settings_client.gui.zoom_max));
} else {
_gui_zoom = static_cast<ZoomLevel>(_gui_zoom_cfg);
_gui_zoom = static_cast<ZoomLevel>(Clamp(_gui_zoom_cfg, _settings_client.gui.zoom_min, _settings_client.gui.zoom_max));
/* Write the value back in case it was not between min/max. */
_gui_zoom_cfg = _gui_zoom;
}
/* Determine real font zoom to use. */

Loading…
Cancel
Save