From 31b71b67011fa52f091df6fe536a11d6d0bfb256 Mon Sep 17 00:00:00 2001 From: Daniel Lange Date: Mon, 25 Jul 2016 18:25:28 +0200 Subject: Imported Upstream version 2.0.2 --- Settings.c | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) (limited to 'Settings.c') diff --git a/Settings.c b/Settings.c index a6bb355..0e296c1 100644 --- a/Settings.c +++ b/Settings.c @@ -159,7 +159,7 @@ static void readFields(ProcessField* fields, int* flags, const char* line) { j++; } } - fields[j] = (ProcessField) NULL; + fields[j] = NULL_PROCESSFIELD; String_freeArray(ids); } @@ -167,18 +167,21 @@ static bool Settings_read(Settings* this, const char* fileName) { FILE* fd; uid_t euid = geteuid(); - seteuid(getuid()); + (void) seteuid(getuid()); fd = fopen(fileName, "r"); - seteuid(euid); + (void) seteuid(euid); if (!fd) return false; - const int maxLine = 2048; - char buffer[maxLine]; bool readMeters = false; - while (fgets(buffer, maxLine, fd)) { + for (;;) { + char* line = String_readLine(fd); + if (!line) { + break; + } int nOptions; - char** option = String_split(buffer, '=', &nOptions); + char** option = String_split(line, '=', &nOptions); + free (line); if (nOptions < 2) { String_freeArray(option); continue; @@ -277,9 +280,9 @@ bool Settings_write(Settings* this) { FILE* fd; uid_t euid = geteuid(); - seteuid(getuid()); + (void) seteuid(getuid()); fd = fopen(this->filename, "w"); - seteuid(euid); + (void) seteuid(euid); if (fd == NULL) { return false; } @@ -366,7 +369,7 @@ Settings* Settings_new(int cpuCount) { } legacyDotfile = String_cat(home, "/.htoprc"); uid_t euid = geteuid(); - seteuid(getuid()); + (void) seteuid(getuid()); (void) mkdir(configDir, 0700); (void) mkdir(htopDir, 0700); free(htopDir); @@ -379,7 +382,7 @@ Settings* Settings_new(int cpuCount) { free(legacyDotfile); legacyDotfile = NULL; } - seteuid(euid); + (void) seteuid(euid); } this->colorScheme = 0; this->changed = false; -- cgit v1.2.3