X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fjournal%2Fjournalctl.c;h=de972a17dbe0b385f44bee421f44d86a5623bbc2;hp=eb79c4d8537e192d61b4f31537fa339ac510b2b6;hb=a72b63536f1da3a97677bf38590f22a962e5fe98;hpb=5ec76417764e19486261fb8e38e8e71b28185b37 diff --git a/src/journal/journalctl.c b/src/journal/journalctl.c index eb79c4d85..de972a17d 100644 --- a/src/journal/journalctl.c +++ b/src/journal/journalctl.c @@ -1288,11 +1288,10 @@ int main(int argc, char *argv[]) { log_error("Failed to iterate through journal: %s", strerror(-r)); goto finish; } + if (r == 0) + break; } - if (r == 0) - break; - if (arg_until_set && !arg_reverse) { usec_t usec; @@ -1338,10 +1337,12 @@ int main(int argc, char *argv[]) { arg_catalog * OUTPUT_CATALOG; r = output_journal(stdout, j, arg_output, 0, flags); - if (r < 0 || ferror(stdout)) + need_seek = true; + if (r == -EADDRNOTAVAIL) + break; + else if (r < 0 || ferror(stdout)) goto finish; - need_seek = true; n_shown++; }