From: Kevin McCarthy Date: Sun, 19 Nov 2017 03:13:08 +0000 (-0800) Subject: Fix ansi escape sequences with both reset and color parameters. (closes #3689) X-Git-Tag: mutt-1-10-rel~115 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=3ccd19906f7fc90e776a4280986862fcd9138387;p=mutt Fix ansi escape sequences with both reset and color parameters. (closes #3689) The initial 0 "reset/normal" was setting attr = ANSI_OFF, which was subsequently being or'ed with ANSI_COLOR. The color resolution was then checking for the ANSI_OFF bit and turning all coloring off, even though ANSI_COLOR was also set. Change the color resolution to check for "attr == ANSI_OFF" instead, so the color isn't reset unless the reset occurs last in the sequence. --- diff --git a/pager.c b/pager.c index 4a9ac6a2..7507ea26 100644 --- a/pager.c +++ b/pager.c @@ -296,7 +296,7 @@ resolve_color (struct line_t *lineInfo, int n, int cnt, int flags, int special, { color ^= A_BLINK; } - else if (a->attr & ANSI_OFF) + else if (a->attr == ANSI_OFF) { a->attr = 0; }