chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
systemd-coredump: Log crashes without coredumps on failure
[elogind.git]
/
src
/
journal
/
journal-vacuum.c
diff --git
a/src/journal/journal-vacuum.c
b/src/journal/journal-vacuum.c
index 79572f1fb6df556e25d09075afa5b5b265757462..178c8030dbe56b2ef86be90a4a4afbc629545850 100644
(file)
--- a/
src/journal/journal-vacuum.c
+++ b/
src/journal/journal-vacuum.c
@@
-129,8
+129,9
@@
static void patch_realtime(
}
static int journal_file_empty(int dir_fd, const char *name) {
}
static int journal_file_empty(int dir_fd, const char *name) {
- int
fd,
r;
+ int r;
le64_t n_entries;
le64_t n_entries;
+ _cleanup_close_ int fd;
fd = openat(dir_fd, name, O_RDONLY|O_CLOEXEC|O_NOFOLLOW|O_NONBLOCK);
if (fd < 0)
fd = openat(dir_fd, name, O_RDONLY|O_CLOEXEC|O_NOFOLLOW|O_NONBLOCK);
if (fd < 0)
@@
-265,18
+266,18
@@
int journal_directory_vacuum(
/* We do not vacuum active files or unknown files! */
continue;
/* We do not vacuum active files or unknown files! */
continue;
- if (journal_file_empty(dirfd(d),
de->d_name
)) {
+ if (journal_file_empty(dirfd(d),
p
)) {
/* Always vacuum empty non-online files. */
/* Always vacuum empty non-online files. */
- if (unlinkat(dirfd(d),
de->d_name
, 0) >= 0)
- log_debug("Deleted empty journal %s/%s.", directory,
de->d_name
);
+ if (unlinkat(dirfd(d),
p
, 0) >= 0)
+ log_debug("Deleted empty journal %s/%s.", directory,
p
);
else if (errno != ENOENT)
else if (errno != ENOENT)
- log_warning("Failed to delete %s/%s: %m", directory,
de->d_name
);
+ log_warning("Failed to delete %s/%s: %m", directory,
p
);
continue;
}
continue;
}
- patch_realtime(directory,
de->d_name
, &st, &realtime);
+ patch_realtime(directory,
p
, &st, &realtime);
GREEDY_REALLOC(list, n_allocated, n_list + 1);
GREEDY_REALLOC(list, n_allocated, n_list + 1);