From f9bef2b2c3b7295919f27d922681aadc5486bdff Mon Sep 17 00:00:00 2001 From: Craig Small Date: Wed, 20 Dec 2017 22:09:41 +1100 Subject: [PATCH] watch: Support ANSI 39,49 reset sequences ANSI colour sequences 39 and 49 reset the foreground and background colours respectively. This feature was missing from watch using the colour "-c" option. References: Fixes #73 https://en.wikipedia.org/wiki/ANSI_escape_code#SGR_(Select_Graphic_Rendition)_parameters --- NEWS | 1 + watch.c | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/NEWS b/NEWS index 173ec21e..c968987f 100644 --- a/NEWS +++ b/NEWS @@ -24,6 +24,7 @@ procps-ng-NEXT * top: provide proper multi-byte string handling issue #68 * watch: define HOST_NAME_MAX where not defined Debian #830734 * vmstat: Fix alignment for disk partition format issue #69 + * watch: Support ANSI 39,49 reset sequences issue #73 procps-ng-3.3.12 ---------------- diff --git a/watch.c b/watch.c index e8bfb75f..048a4507 100644 --- a/watch.c +++ b/watch.c @@ -186,6 +186,12 @@ static int set_ansi_attribute(const int attrib) case 27: /* unset inversed */ attributes &= ~A_REVERSE; break; + case 39: + fg_col = 0; + break; + case 49: + bg_col = 0; + break; default: if (attrib >= 30 && attrib <= 37) { /* set foreground color */ fg_col = attrib - 30 + 1;