mirror of
https://github.com/systemd/systemd.git
synced 2025-03-19 22:50:17 +03:00
condition: fix reversed tests if path does not exist at all
CONDITION_PATH_IS_DIRECTORY, CONDITION_PATH_IS_SYMBOLIC_LINK and CONDITION_FILE_IS_EXECUTABLE gave reversed results when the path did not exist at all.
This commit is contained in:
parent
f8440af5fe
commit
1f8fef5a44
@ -163,7 +163,7 @@ bool condition_test(Condition *c) {
|
||||
struct stat st;
|
||||
|
||||
if (stat(c->parameter, &st) < 0)
|
||||
return !c->negate;
|
||||
return c->negate;
|
||||
return S_ISDIR(st.st_mode) == !c->negate;
|
||||
}
|
||||
|
||||
@ -171,7 +171,7 @@ bool condition_test(Condition *c) {
|
||||
struct stat st;
|
||||
|
||||
if (lstat(c->parameter, &st) < 0)
|
||||
return !c->negate;
|
||||
return c->negate;
|
||||
return S_ISLNK(st.st_mode) == !c->negate;
|
||||
}
|
||||
|
||||
@ -189,7 +189,7 @@ bool condition_test(Condition *c) {
|
||||
struct stat st;
|
||||
|
||||
if (stat(c->parameter, &st) < 0)
|
||||
return !c->negate;
|
||||
return c->negate;
|
||||
|
||||
return (S_ISREG(st.st_mode) && (st.st_mode & 0111)) == !c->negate;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user