The command
$ column -t -W2 -c11 <<< "cat dog bird"
causes finite loop, because there is no minimal column width (missing
header). The print functions should be robust enough to return -EINVAL
when nonsense is requested.
Addresses: https://github.com/karelzak/util-linux/pull/577
Signed-off-by: Karel Zak <kzak@redhat.com>
if (!cl->pending_data)
return 0;
+ if (!width)
+ return -EINVAL;
DBG(COL, ul_debugobj(cl, "printing pending data"));
if (bytes == (size_t) -1)
goto err;
- step_pending_data(cl, bytes);
+ if (bytes)
+ step_pending_data(cl, bytes);
if (color)
fputs(color, tb->out);