on_ac_power needs to exit not return bug #322037

This commit is contained in:
Jory A. Pratt 2010-07-12 22:19:56 -05:00
parent 6f24d1cbd8
commit 761fe99fe2

View File

@ -6,30 +6,30 @@
if [ -f /proc/acpi/ac_adapter/AC*/state ]; then if [ -f /proc/acpi/ac_adapter/AC*/state ]; then
cat /proc/acpi/ac_adapter/AC*/state | while read line; do cat /proc/acpi/ac_adapter/AC*/state | while read line; do
case "$line" in case "$line" in
"state:"*"off-line") return 128;; "state:"*"off-line") exit 128;;
esac esac
done done
elif [ -f /sys/class/power_supply/AC*/online ]; then elif [ -f /sys/class/power_supply/AC*/online ]; then
cat /sys/class/power_supply/AC*/online | while read line; do cat /sys/class/power_supply/AC*/online | while read line; do
[ "${line}" = 0 ] && return 128 [ "${line}" = 0 ] && exit 128
done done
elif [ -f /proc/pmu/info ]; then elif [ -f /proc/pmu/info ]; then
cat /proc/pmu/info | while read line; do cat /proc/pmu/info | while read line; do
case "$line" in case "$line" in
"AC Power"*": 0") return 128;; "AC Power"*": 0") exit 128;;
esac esac
done done
elif type envstat >/dev/null 2>&1; then elif type envstat >/dev/null 2>&1; then
# NetBSD has envstat # NetBSD has envstat
envstat -d acpiacad0 2>/dev/null | while read line; do envstat -d acpiacad0 2>/dev/null | while read line; do
case "$line" in case "$line" in
"connected:"*"OFF") return 128;; "connected:"*"OFF") exit 128;;
esac esac
done done
elif sysctl -q hw.acpi.acline >/dev/null 2>/dev/null; then elif sysctl -q hw.acpi.acline >/dev/null 2>/dev/null; then
case $(sysctl -n hw.acpi.acline) in case $(sysctl -n hw.acpi.acline) in
0) return 1;; 0) exit 1;;
*) return 0;; *) exit 0;;
esac esac
else else
exit 255 exit 255