ryantimwilson / rpms / systemd

Forked from rpms/systemd a month ago
Clone
Zbigniew Jędrzejewski-Szmek 47c564
From 494bf9d6d22406676c63822cbf941214fed3111c Mon Sep 17 00:00:00 2001
Zbigniew Jędrzejewski-Szmek 47c564
From: Uoti Urpala <uoti.urpala@pp1.inet.fi>
Zbigniew Jędrzejewski-Szmek 47c564
Date: Thu, 20 Feb 2014 03:00:09 +0200
Zbigniew Jędrzejewski-Szmek 47c564
Subject: [PATCH] logs-show: fix corrupt output with empty messages
Zbigniew Jędrzejewski-Szmek 47c564
Zbigniew Jędrzejewski-Szmek 47c564
If a message had zero length, journalctl would print no newline, and
Zbigniew Jędrzejewski-Szmek 47c564
two output lines would be concatenated. Fix. The problem was
Zbigniew Jędrzejewski-Szmek 47c564
introduced in commit 31f7bf199452 ("logs-show: print multiline
Zbigniew Jędrzejewski-Szmek 47c564
messages"). Affected short and verbose output modes.
Zbigniew Jędrzejewski-Szmek 47c564
Zbigniew Jędrzejewski-Szmek 47c564
Before fix:
Zbigniew Jędrzejewski-Szmek 47c564
Zbigniew Jędrzejewski-Szmek 47c564
Feb 09 21:16:17 glyph dhclient[1323]: Feb 09 21:16:17 glyph NetworkManager[788]: <info> (enp4s2): DHCPv4 state changed nbi -> preinit
Zbigniew Jędrzejewski-Szmek 47c564
Zbigniew Jędrzejewski-Szmek 47c564
after:
Zbigniew Jędrzejewski-Szmek 47c564
Zbigniew Jędrzejewski-Szmek 47c564
Feb 09 21:16:17 glyph dhclient[1323]:
Zbigniew Jędrzejewski-Szmek 47c564
Feb 09 21:16:17 glyph NetworkManager[788]: <info> (enp4s2): DHCPv4 state changed nbi -> preinit
Zbigniew Jędrzejewski-Szmek 47c564
Zbigniew Jędrzejewski-Szmek 47c564
(cherry picked from commit 47d80904a1f72d559962cc5ad32fffd46672a34a)
Zbigniew Jędrzejewski-Szmek 47c564
---
Zbigniew Jędrzejewski-Szmek 47c564
 src/shared/logs-show.c | 5 +++++
Zbigniew Jędrzejewski-Szmek 47c564
 1 file changed, 5 insertions(+)
Zbigniew Jędrzejewski-Szmek 47c564
Zbigniew Jędrzejewski-Szmek 47c564
diff --git a/src/shared/logs-show.c b/src/shared/logs-show.c
Zbigniew Jędrzejewski-Szmek 47c564
index 61c3652..12d4a1c 100644
Zbigniew Jędrzejewski-Szmek 47c564
--- a/src/shared/logs-show.c
Zbigniew Jędrzejewski-Szmek 47c564
+++ b/src/shared/logs-show.c
Zbigniew Jędrzejewski-Szmek 47c564
@@ -124,6 +124,11 @@ static bool print_multiline(FILE *f, unsigned prefix, unsigned n_columns, Output
Zbigniew Jędrzejewski-Szmek 47c564
                 }
Zbigniew Jędrzejewski-Szmek 47c564
         }
Zbigniew Jędrzejewski-Szmek 47c564
 
Zbigniew Jędrzejewski-Szmek 47c564
+        /* A special case: make sure that we print a newline when
Zbigniew Jędrzejewski-Szmek 47c564
+           the message is empty. */
Zbigniew Jędrzejewski-Szmek 47c564
+        if (message_len == 0)
Zbigniew Jędrzejewski-Szmek 47c564
+                fputs("\n", f);
Zbigniew Jędrzejewski-Szmek 47c564
+
Zbigniew Jędrzejewski-Szmek 47c564
         for (pos = message;
Zbigniew Jędrzejewski-Szmek 47c564
              pos < message + message_len;
Zbigniew Jędrzejewski-Szmek 47c564
              pos = end + 1, line++) {