[systemd-commits] src/shared

Lennart Poettering lennart at kemper.freedesktop.org
Mon Sep 3 19:16:36 PDT 2012


 src/shared/logs-show.c |    6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

New commits:
commit e268b81e97833a4636dba476056fa936c4da5796
Author: Brandon Philips <brandon at ifup.org>
Date:   Mon Sep 3 18:37:46 2012 -0700

    shared: logs-show: fflush after each output type
    
    journalctl -f redirected to a pipe or file wasn't working for some
    output formats but was working for json. It turns out only json was
    doing an fflush.
    
    Make all output formats flush.

diff --git a/src/shared/logs-show.c b/src/shared/logs-show.c
index 99407c9..67b2056 100644
--- a/src/shared/logs-show.c
+++ b/src/shared/logs-show.c
@@ -521,7 +521,6 @@ static int output_json(sd_journal *j, unsigned line,
         }
 
         fputs("\n}", stdout);
-        fflush(stdout);
 
         return 0;
 }
@@ -560,13 +559,16 @@ static int (*output_funcs[_OUTPUT_MODE_MAX])(sd_journal*j, unsigned line,
 
 int output_journal(sd_journal *j, OutputMode mode, unsigned line,
                    unsigned n_columns, OutputFlags flags) {
+        int ret;
         assert(mode >= 0);
         assert(mode < _OUTPUT_MODE_MAX);
 
         if (n_columns <= 0)
                 n_columns = columns();
 
-        return output_funcs[mode](j, line, n_columns, flags);
+        ret = output_funcs[mode](j, line, n_columns, flags);
+        fflush(stdout);
+        return ret;
 }
 
 int show_journal_by_unit(



More information about the systemd-commits mailing list