on_ac_power needs to exit not return bug #322037
Jory A. Pratt
13 years ago
5 | 5 | if [ -f /proc/acpi/ac_adapter/AC*/state ]; then |
6 | 6 | cat /proc/acpi/ac_adapter/AC*/state | while read line; do |
7 | 7 | case "$line" in |
8 | "state:"*"off-line") return 128;; | |
8 | "state:"*"off-line") exit 128;; | |
9 | 9 | esac |
10 | 10 | done |
11 | 11 | elif [ -f /sys/class/power_supply/AC*/online ]; then |
12 | 12 | cat /sys/class/power_supply/AC*/online | while read line; do |
13 | [ "${line}" = 0 ] && return 128 | |
13 | [ "${line}" = 0 ] && exit 128 | |
14 | 14 | done |
15 | 15 | elif [ -f /proc/pmu/info ]; then |
16 | 16 | cat /proc/pmu/info | while read line; do |
17 | 17 | case "$line" in |
18 | "AC Power"*": 0") return 128;; | |
18 | "AC Power"*": 0") exit 128;; | |
19 | 19 | esac |
20 | 20 | done |
21 | 21 | elif type envstat >/dev/null 2>&1; then |
22 | 22 | # NetBSD has envstat |
23 | 23 | envstat -d acpiacad0 2>/dev/null | while read line; do |
24 | 24 | case "$line" in |
25 | "connected:"*"OFF") return 128;; | |
25 | "connected:"*"OFF") exit 128;; | |
26 | 26 | esac |
27 | 27 | done |
28 | 28 | elif sysctl -q hw.acpi.acline >/dev/null 2>/dev/null; then |
29 | 29 | case $(sysctl -n hw.acpi.acline) in |
30 | 0) return 1;; | |
31 | *) return 0;; | |
30 | 0) exit 1;; | |
31 | *) exit 0;; | |
32 | 32 | esac |
33 | 33 | else |
34 | 34 | exit 255 |