Initialize backlight end_level member variable in constructor.
Since it's possible that `file >> end_level;' in backlight::end_measurement
can fail, we'll use unknown value in calcultion (e.g. 0x7fffffff) 

p = 100.0 * (end_level + start_level) / 2 / max_level;

---

 devices/backlight.cpp |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/devices/backlight.cpp b/devices/backlight.cpp
index 6da03d6..2163902 100644
--- a/devices/backlight.cpp
+++ b/devices/backlight.cpp
@@ -45,6 +45,7 @@ backlight::backlight(char *_name, char *path)
        min_level = 0;
        max_level = 0;
        start_level = 0;
+       end_level = 0;
        strncpy(sysfs_path, path, sizeof(sysfs_path));
        sprintf(devname, "backlight:%s", _name);
        strncpy(name, devname, sizeof(name));
@@ -231,4 +232,5 @@ double backlight::power_usage(struct result_bundle *result, 
struct parameter_bun
        power += _utilization * factor / 100.0;
 
        return power;
-}
\ No newline at end of file
+}
+

_______________________________________________
Discuss mailing list
[email protected]
http://lists.lesswatts.org/listinfo/discuss

Reply via email to