author | sandman <sandman> | 2002-10-28 04:41:42 (UTC) |
---|---|---|
committer | sandman <sandman> | 2002-10-28 04:41:42 (UTC) |
commit | 226ddd19ef0adeb279c3a864e24cbfcf556b2f17 (patch) (side-by-side diff) | |
tree | c1c95e39fa0634a881ffbeba190653dc7ee6201c | |
parent | 37397a824a807195ba440117a6bac0043ea788a1 (diff) | |
download | opie-226ddd19ef0adeb279c3a864e24cbfcf556b2f17.zip opie-226ddd19ef0adeb279c3a864e24cbfcf556b2f17.tar.gz opie-226ddd19ef0adeb279c3a864e24cbfcf556b2f17.tar.bz2 |
- read ( fd, buffer, 4 ); return 5 (!!) for /proc/hal/light_sensor
so we better try to read 5 bytes ...
- small "off by one" fix for the lcd brightness resolution
-rw-r--r-- | libopie/odevice.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/libopie/odevice.cpp b/libopie/odevice.cpp index 6ea4d45..2b7e927 100644 --- a/libopie/odevice.cpp +++ b/libopie/odevice.cpp @@ -675,5 +675,5 @@ bool iPAQ::setDisplayBrightness ( int bright ) int iPAQ::displayBrightnessResolution ( ) const { - return 255; // really 128, but logarithmic control is smoother this way + return 256; // really 128, but logarithmic control is smoother this way } @@ -683,5 +683,6 @@ bool iPAQ::hasLightSensor ( ) const return true; } - +#include <errno.h> +#include <string.h> int iPAQ::readLightSensor ( ) { @@ -690,7 +691,7 @@ int iPAQ::readLightSensor ( ) if (( fd = ::open ( "/proc/hal/light_sensor", O_RDONLY )) >= 0 ) { - char buffer [5]; + char buffer [8]; - if ( ::read ( fd, buffer, 4 ) == 4 ) { + if ( ::read ( fd, buffer, 5 ) == 5 ) char *endptr; @@ -701,5 +702,4 @@ int iPAQ::readLightSensor ( ) val = -1; } - ::close ( fd ); } @@ -947,5 +947,5 @@ bool Zaurus::setDisplayBrightness ( int bright ) int Zaurus::displayBrightnessResolution ( ) const { - return 4; + return 5; } |