mirror of
https://github.com/systemd/systemd
synced 2024-10-15 04:24:19 +00:00
tmpfiles: Don't fail if file does not exist in item_do()
If the file was removed by some other program, we should just go to the next one without failing. item_do() is only used for recursive globs instead of fixed paths so skipping on missing files makes sense (unlike if the path was fixed where we should probably fail). Fixes #32691 (hopefully)
This commit is contained in:
parent
a35edc9ad4
commit
677430b3c7
|
@ -2512,7 +2512,7 @@ static int item_do(
|
|||
fdaction_t action) {
|
||||
|
||||
struct stat st;
|
||||
int r = 0, q;
|
||||
int r = 0, q = 0;
|
||||
|
||||
assert(c);
|
||||
assert(i);
|
||||
|
@ -2547,9 +2547,10 @@ static int item_do(
|
|||
continue;
|
||||
|
||||
de_fd = openat(fd, de->d_name, O_NOFOLLOW|O_CLOEXEC|O_PATH);
|
||||
if (de_fd < 0)
|
||||
q = log_error_errno(errno, "Failed to open() file '%s': %m", de->d_name);
|
||||
else {
|
||||
if (de_fd < 0) {
|
||||
if (errno != -ENOENT)
|
||||
q = log_error_errno(errno, "Failed to open file '%s': %m", de->d_name);
|
||||
} else {
|
||||
_cleanup_free_ char *de_path = NULL;
|
||||
|
||||
de_path = path_join(path, de->d_name);
|
||||
|
|
Loading…
Reference in a new issue