diff options
-rw-r--r-- | src/gpm-backlight.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/gpm-backlight.c b/src/gpm-backlight.c index 3df80ef..6f4ea7c 100644 --- a/src/gpm-backlight.c +++ b/src/gpm-backlight.c @@ -426,9 +426,14 @@ gpm_backlight_save_settings (GpmBacklight *backlight, guint percentage) * running on AC. */ brightness_ac = g_settings_get_double (backlight->priv->settings, GPM_SETTINGS_BRIGHTNESS_AC); - battery_reduce = 100 - (gint) (percentage * 100.0f / brightness_ac); + if (brightness_ac) { + battery_reduce = 100 - (gint) (percentage * 100.0f / brightness_ac); + } else { + /* Any negative number indicates we surpassed brightness_ac. 0 indicates nothing changed. */ + battery_reduce = - (gint) percentage; + } if (battery_reduce < 0) { - /* Brightness set higher than brightness-ac - we have to adjust that value. */ + /* Brightness set higher than brightness_ac - we have to adjust that value. */ g_settings_set_double (backlight->priv->settings, GPM_SETTINGS_BRIGHTNESS_AC, percentage * 1.0); battery_reduce = 0; |