diff options
author | Daniel Lange <DLange@git.local> | 2016-07-25 18:25:29 +0200 |
---|---|---|
committer | Daniel Lange <DLange@git.local> | 2016-07-25 18:25:29 +0200 |
commit | aed86a83b9120528c2a2a5c137d443917682d4b4 (patch) | |
tree | 979855616d56f2864dedc7b88798e9831614e9ee /linux/Battery.c | |
parent | 6ca259100661aa0be46c8645773d32a8a6a5f312 (diff) | |
parent | 31b71b67011fa52f091df6fe536a11d6d0bfb256 (diff) | |
download | debian_htop-aed86a83b9120528c2a2a5c137d443917682d4b4.tar.gz debian_htop-aed86a83b9120528c2a2a5c137d443917682d4b4.tar.bz2 debian_htop-aed86a83b9120528c2a2a5c137d443917682d4b4.zip |
Merge tag 'upstream/2.0.2'
Upstream version 2.0.2
Diffstat (limited to 'linux/Battery.c')
-rw-r--r-- | linux/Battery.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/linux/Battery.c b/linux/Battery.c index 572bad4..1068184 100644 --- a/linux/Battery.c +++ b/linux/Battery.c @@ -65,10 +65,11 @@ static unsigned long int parseBatInfo(const char *fileName, const unsigned short break; } - char line[50] = ""; + char* line = NULL; for (unsigned short int i = 0; i < lineNum; i++) { - char* ok = fgets(line, sizeof line, file); - if (!ok) break; + free(line); + line = String_readLine(file); + if (!line) break; } fclose(file); @@ -76,7 +77,8 @@ static unsigned long int parseBatInfo(const char *fileName, const unsigned short char *foundNumStr = String_getToken(line, wordNum); const unsigned long int foundNum = atoi(foundNumStr); free(foundNumStr); - + free(line); + total += foundNum; } @@ -116,14 +118,13 @@ static ACPresence procAcpiCheck() { continue; } - char line[100]; - char* ok = fgets(line, sizeof line, file); - if (!ok) continue; - line[sizeof(line) - 1] = '\0'; + char* line = String_readLine(file); + if (!line) continue; fclose(file); const char *isOnline = String_getToken(line, 2); + free(line); if (strcmp(isOnline, "on-line") == 0) { isOn = AC_PRESENT; |