]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
libsmartcols: fix padding for non-maxout output
authorKarel Zak <kzak@redhat.com>
Tue, 6 Sep 2016 11:01:09 +0000 (13:01 +0200)
committerKarel Zak <kzak@redhat.com>
Tue, 6 Sep 2016 11:01:09 +0000 (13:01 +0200)
Signed-off-by: Karel Zak <kzak@redhat.com>
libsmartcols/src/table_print.c

index 4d902b1d6a6cf4b559c63bf01b4f88e131c01308..32b9ddab150cfd34c8c9f4a947df5f7834129b13 100644 (file)
@@ -242,12 +242,15 @@ static void print_empty_cell(struct libscols_table *tb,
                        }
                }
        }
+
+       if (is_last_column(cl))
+               return;
+
        /* fill rest of cell with space */
        for(; len_pad < cl->width; ++len_pad)
                fputc(' ', tb->out);
 
-       if (!is_last_column(cl))
-               fputs(colsep(tb), tb->out);
+       fputs(colsep(tb), tb->out);
 }
 
 
@@ -386,12 +389,13 @@ static int print_pending_data(
                fputs(UL_COLOR_RESET, tb->out);
        free(data);
 
+       if (is_last_column(cl))
+               return 0;
+
        for (i = len; i < width; i++)
                fputc(' ', tb->out);            /* padding */
 
-       if (!is_last_column(cl))
-               fputs(colsep(tb), tb->out);     /* columns separator */
-
+       fputs(colsep(tb), tb->out);     /* columns separator */
        return 0;
 err:
        free(data);
@@ -472,9 +476,7 @@ static int print_data(struct libscols_table *tb,
        if (is_last_column(cl)
            && len < width
            && !scols_table_is_maxout(tb)
-           && !scols_column_is_right(cl)
-           && !scols_column_is_wrap(cl)
-           && !scols_column_is_wrapnl(cl))
+           && !scols_column_is_right(cl))
                width = len;
 
        /* truncate data */