Skip to content

Commit

Permalink
Linux: fixes sysfs battery discovery
Browse files Browse the repository at this point in the history
  • Loading branch information
smattie committed Sep 7, 2019
1 parent 402e46b commit 1886117
Showing 1 changed file with 12 additions and 1 deletion.
13 changes: 12 additions & 1 deletion linux/Battery.c
Expand Up @@ -193,7 +193,18 @@ static void Battery_getSysData(double* level, ACPresence* isOnAC) {
char* entryName = (char *) dirEntry->d_name;
const char filePath[50];

if (entryName[0] == 'B' && entryName[1] == 'A' && entryName[2] == 'T') {
xSnprintf((char *) filePath, sizeof filePath, SYS_POWERSUPPLY_DIR "/%s/type", entryName);
int fd = open(filePath, O_RDONLY);
if (fd == -1)
continue;

char type[8];
ssize_t typelen = xread(fd, type, 7);
close(fd);
if (typelen < 1)
continue;

if (type[0] == 'B' && type[1] == 'a' && type[2] == 't') {

xSnprintf((char *) filePath, sizeof filePath, SYS_POWERSUPPLY_DIR "/%s/uevent", entryName);
int fd = open(filePath, O_RDONLY);
Expand Down

0 comments on commit 1886117

Please sign in to comment.