From: Theodore Ts'o Date: Tue, 21 Feb 2012 00:10:19 +0000 (-0500) Subject: e2fsck: check new sysfs interface to determine if we are on battery X-Git-Tag: v1.42.2~51 X-Git-Url: https://git.whamcloud.com/?a=commitdiff_plain;h=ad880a0e2bb1bef11382b4f38d440529e4cbdc2e;p=tools%2Fe2fsprogs.git e2fsck: check new sysfs interface to determine if we are on battery ...since the old way is deprecated. Addresses-SourceForge-Bug: #3439277 Signed-off-by: "Theodore Ts'o" --- diff --git a/e2fsck/unix.c b/e2fsck/unix.c index c38b67a..6f97b0f 100644 --- a/e2fsck/unix.c +++ b/e2fsck/unix.c @@ -252,6 +252,14 @@ static int is_on_batt(void) unsigned int acflag; struct dirent* de; + f = fopen("/sys/class/power_supply/AC/online", "r"); + if (f) { + if (fscanf(f, "%d\n", &acflag) == 1) { + fclose(f); + return (!acflag); + } + fclose(f); + } f = fopen("/proc/apm", "r"); if (f) { if (fscanf(f, "%s %s %s %x", tmp, tmp, tmp, &acflag) != 4)