From 0eeb9f918e8ebb057fd2a434c7d77a6a6d670932 Mon Sep 17 00:00:00 2001 From: sonninnos <45124675+sonninnos@users.noreply.github.com> Date: Wed, 6 Sep 2023 04:14:04 +0300 Subject: [PATCH] Fraction setting wraparound rounding correction (#15676) --- menu/menu_setting.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/menu/menu_setting.c b/menu/menu_setting.c index 46a523594c..32bcfb8b01 100644 --- a/menu/menu_setting.c +++ b/menu/menu_setting.c @@ -1083,8 +1083,9 @@ static int setting_fraction_action_left_default( if (setting->flags & SD_FLAG_ENFORCE_MINRANGE) { - float min = setting->min; - if (*setting->value.target.fraction < min) + float min = setting->min; + float half_step = setting->step * 0.5f; + if (*setting->value.target.fraction < min - half_step) { settings_t *settings = config_get_ptr(); float max = setting->max;