We should ignore output_columns unless it's greater than zero.
A zero means we couldn't get any information from ioctl(TIOCGWINSZ);
in that case the expected behavior is to print the data at native width,
not to wrap it at the smallest possible value. print_aligned_text()
gets this consideration right, but print_aligned_vertical() lost track
of this detail somewhere along the line.
if (rwidth > min_width)
min_width = rwidth;
- if (width < min_width || output_columns < min_width)
+ if (width < min_width ||
+ (output_columns > 0 && output_columns < min_width))
{
/* Set data width to match min_width */
newdwidth = min_width - hwidth - swidth;