From: George McCollister Date: Wed, 4 Sep 2013 12:12:44 +0000 (-0500) Subject: journald: fix fd leak in journal_file_empty X-Git-Tag: v207~55 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=489798614cefed16db5f086c3fa9a301f0276fd8;p=elogind.git journald: fix fd leak in journal_file_empty Before my previous patch, journal_file_empty wasn't be called with the correct filename. Now that it's being called with the correct filename it leaks file descriptors. This patch closes the file descriptors before returning. Signed-off-by: George McCollister [Edit harald@redhat.com: make use of _cleanup_close_ instead] --- diff --git a/src/journal/journal-vacuum.c b/src/journal/journal-vacuum.c index ace772273..178c8030d 100644 --- 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) { - int fd, r; + int r; le64_t n_entries; + _cleanup_close_ int fd; fd = openat(dir_fd, name, O_RDONLY|O_CLOEXEC|O_NOFOLLOW|O_NONBLOCK); if (fd < 0)