[systemd-commits] src/shared

Lennart Poettering lennart at kemper.freedesktop.org
Thu Jul 19 15:13:02 PDT 2012


 src/shared/logs-show.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit b61a4660fcfb76f062c081110fb18424b0bb7b23
Author: Eelco Dolstra <eelco.dolstra at logicblox.com>
Date:   Thu Jul 19 21:12:16 2012 +0000

    journalctl: fix assertion failure in ellipsize_mem()
    
    When showing the journal through "journalctl --no-pager", if the
    prefix of the log message (i.e. the date and syslog identifier) is
    less than 3 characters shorter than the width of the terminal, you
    get:
    
    Assertion 'new_length >= 3' failed at src/shared/util.c:3859, function ellipsize_mem(). Aborting.
    
    because there is not enough space for the "...".  This patch add the
    necessary check.

diff --git a/src/shared/logs-show.c b/src/shared/logs-show.c
index 43e42f7..a68cd3d 100644
--- a/src/shared/logs-show.c
+++ b/src/shared/logs-show.c
@@ -228,7 +228,7 @@ static int output_short(sd_journal *j, unsigned line, unsigned n_columns,
         } else if ((flags & OUTPUT_FULL_WIDTH) ||
                    (message_len + n < n_columns))
                 printf(": %.*s\n", (int) message_len, message);
-        else if (n < n_columns) {
+        else if (n < n_columns && n_columns - n - 2 >= 3) {
                 char *e;
 
                 e = ellipsize_mem(message, message_len, n_columns - n - 2, 90);



More information about the systemd-commits mailing list