chiark / gitweb /
backlight: let udev properties override clamping
[elogind.git] / src / backlight / backlight.c
index 1271a66983392c8dc1a692eb0b6f83f4f47c46f9..c79ad6520c9f8668f0992c51d7506790f23e8726 100644 (file)
@@ -373,6 +373,7 @@ int main(int argc, char *argv[]) {
 
         if (streq(argv[1], "load")) {
                 _cleanup_free_ char *value = NULL;
+                const char *clamp;
 
                 if (!shall_restore_state())
                         return EXIT_SUCCESS;
@@ -390,7 +391,9 @@ int main(int argc, char *argv[]) {
                         return EXIT_FAILURE;
                 }
 
-                clamp_brightness(device, &value, max_brightness);
+                clamp = udev_device_get_property_value(device, "ID_BACKLIGHT_CLAMP");
+                if (!clamp || parse_boolean(clamp) != 0) /* default to clamping */
+                        clamp_brightness(device, &value, max_brightness);
 
                 r = udev_device_set_sysattr_value(device, "brightness", value);
                 if (r < 0) {