On 12/21/2011 07:46 PM, Jan Engelhardt wrote:
On Wednesday 2011-12-21 15:08, Zbigniew Jędrzejewski-Szmek wrote:
On 12/21/2011 02:23 PM, Jan Engelhardt wrote:
+unsigned int console_width(void)
+{
...
+}
+
Hi,
there already is columns() in src/util.c :)
It gets the #columns from stdout rather than /dev/console to
which the status string is to be written, and keeps the value around
forever without updating even if stdout changes its terminal size.
I guess that in case of columns(), this is reasonable: it is used in
short lived programs like systemctl and loginctl which print a table of
data in one go.
Nevertheless, columns() and console_width() implementations are similar,
but slightly different. Maybe columns() should become a
wrapper which does the caching and then calls a new function with a 'fd'
parameter.
Speaking of which, SIGWINCH is abused in that regard...
I think that using SIGWINCH for alt-up is a behaviour dictated by the
kernel.
Best,
Zbyszek
_______________________________________________
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel