1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 20:28:11 +00:00

WindowServer: Reset mouse acceleration if out of range

Before if the mouse acceleration was out of range the WindowServer would
crash, this could happen if the config had an out of range or non double
vaule.
This commit is contained in:
davidot 2022-10-22 14:41:52 +02:00 committed by Linus Groh
parent 1ab6cb1ee9
commit 97dc1585b1

View file

@ -128,7 +128,13 @@ ErrorOr<int> serenity_main(Main::Arguments)
auto& screen_input = WindowServer::ScreenInput::the();
screen_input.set_cursor_location(WindowServer::Screen::main().rect().center());
screen_input.set_acceleration_factor(atof(wm_config->read_entry("Mouse", "AccelerationFactor", "1.0").characters()));
double f = atof(wm_config->read_entry("Mouse", "AccelerationFactor", "1.0").characters());
if (f < WindowServer::mouse_accel_min || f > WindowServer::mouse_accel_max) {
dbgln("Mouse.AccelerationFactor out of range resetting to 1.0");
f = 1.0;
wm_config->write_entry("Mouse", "AccelerationFactor", "1.0");
}
screen_input.set_acceleration_factor(f);
screen_input.set_scroll_step_size(wm_config->read_num_entry("Mouse", "ScrollStepSize", 4));
WindowServer::Compositor::the();