From a72b63536f1da3a97677bf38590f22a962e5fe98 Mon Sep 17 00:00:00 2001 From: Zbigniew Jędrzejewski-Szmek Date: Sun, 9 Jun 2013 21:50:56 -0400 Subject: journalctl: fix verbose output when no logs are found $ journalctl -o verbose _EXE=/quiet/binary -f -- Logs begin at Sun 2013-03-17 17:28:22 EDT. -- Failed to get realtime timestamp: Cannot assign requested address JOURNAL_FOREACH_DATA_RETVAL is added, which allows the caller to get the return value from sd_journal_enumerate_data. I think we might want to expose this macro like SD_JOURNAL_FOREACH_DATA, but for now it is in journal-internal.h. There's a change in behaviour for output_*, not only in output_verbose, that errors in sd_j_enumerate_data are not silently ignored anymore. https://bugs.freedesktop.org/show_bug.cgi?id=56459 --- src/journal/journal-internal.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/journal/journal-internal.h') diff --git a/src/journal/journal-internal.h b/src/journal/journal-internal.h index c7e585d810..f576a0073d 100644 --- a/src/journal/journal-internal.h +++ b/src/journal/journal-internal.h @@ -139,3 +139,6 @@ static inline void journal_closep(sd_journal **j) { } #define _cleanup_journal_close_ _cleanup_(journal_closep) + +#define JOURNAL_FOREACH_DATA_RETVAL(j, data, l, retval) \ + for (sd_journal_restart_data(j); ((retval) = sd_journal_enumerate_data((j), &(data), &(l))) > 0; ) -- cgit v1.2.3-54-g00ecf