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

Reply via email to