From: Karel Zak Date: Wed, 2 Apr 2014 12:05:10 +0000 (+0200) Subject: libsmartcols: init symbols when necessary X-Git-Tag: v2.25-rc1~346 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1424fe8c86b376ce1f908aae79f2e48639de115a;p=thirdparty%2Futil-linux.git libsmartcols: init symbols when necessary Signed-off-by: Karel Zak --- diff --git a/libsmartcols/src/table.c b/libsmartcols/src/table.c index 94df47b057..dd26410fe7 100644 --- a/libsmartcols/src/table.c +++ b/libsmartcols/src/table.c @@ -60,9 +60,11 @@ struct libscols_table *scols_new_table(struct libscols_symbols *syms) INIT_LIST_HEAD(&tb->tb_lines); INIT_LIST_HEAD(&tb->tb_columns); - if (scols_table_set_symbols(tb, syms) == 0) - return tb; + if (syms && scols_table_set_symbols(tb, syms) != 0) + goto err; + return tb; +err: scols_unref_table(tb); return NULL; } diff --git a/libsmartcols/src/table_print.c b/libsmartcols/src/table_print.c index 306f2d2e79..f3cdf70c7c 100644 --- a/libsmartcols/src/table_print.c +++ b/libsmartcols/src/table_print.c @@ -553,6 +553,9 @@ int scols_print_table(struct libscols_table *tb) if (!tb) return -1; + if (!tb->symbols) + scols_table_set_symbols(tb, NULL); /* use default */ + tb->is_term = isatty(STDOUT_FILENO); tb->termwidth = tb->is_term ? get_terminal_width() : 0; if (tb->termwidth <= 0)