summaryrefslogtreecommitdiffstats
path: root/Settings.c
diff options
context:
space:
mode:
authorHisham Muhammad <hisham@gobolinux.org>2014-04-22 20:35:57 -0300
committerHisham Muhammad <hisham@gobolinux.org>2014-04-22 20:35:57 -0300
commit823bdbae133afcb00718ab50af85186df2e7b155 (patch)
tree84aa29d254fe566a7db64df478b4787f215bcb6a /Settings.c
parent1afbc190872b72eaf8f2b3cb1efbbef5a0add268 (diff)
safer code, check result of lstat
Diffstat (limited to 'Settings.c')
-rw-r--r--Settings.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/Settings.c b/Settings.c
index 133a3909..3198cb6b 100644
--- a/Settings.c
+++ b/Settings.c
@@ -243,12 +243,14 @@ Settings* Settings_new(ProcessList* pl, Header* header, int cpuCount) {
htopDir = String_cat(home, "/.config/htop");
}
legacyDotfile = String_cat(home, "/.htoprc");
- mkdir(configDir, 0700);
- mkdir(htopDir, 0700);
+ (void) mkdir(configDir, 0700);
+ (void) mkdir(htopDir, 0700);
free(htopDir);
free(configDir);
struct stat st;
- lstat(legacyDotfile, &st);
+ if (lstat(legacyDotfile, &st) != 0) {
+ st.st_mode = 0;
+ }
if (access(legacyDotfile, R_OK) != 0 || S_ISLNK(st.st_mode)) {
free(legacyDotfile);
legacyDotfile = NULL;

© 2014-2024 Faster IT GmbH | imprint | privacy policy