diff --git a/src/login/inhibit.c b/src/login/inhibit.c index afb4d7e2e1..20685c18a3 100644 --- a/src/login/inhibit.c +++ b/src/login/inhibit.c @@ -90,6 +90,7 @@ static int print_inhibitors(sd_bus *bus) { /* If there's not enough space, shorten the "WHY" column, as it's little more than an explaining comment. */ (void) table_set_weight(table, TABLE_HEADER_CELL(6), 20); + (void) table_set_maximum_width(table, TABLE_HEADER_CELL(0), columns()/2); r = sd_bus_message_enter_container(reply, SD_BUS_TYPE_ARRAY, "(ssssuu)"); if (r < 0) diff --git a/src/shared/format-table.c b/src/shared/format-table.c index 8b9c81664d..e3d8a051a2 100644 --- a/src/shared/format-table.c +++ b/src/shared/format-table.c @@ -1993,8 +1993,7 @@ int table_print(Table *t, FILE *f) { if (width[j] < minimum_width[j]) width[j] = minimum_width[j]; - assert(width[j] >= requested_width[j]); - delta = width[j] - requested_width[j]; + delta = LESS_BY(width[j], requested_width[j]); /* Subtract what we just added from the rest */ if (extra > delta)