Subject: bug#20062: [bug-diffutils] bug#20062: bug#20062: bug#20062: bug#20062: [PATCH] diff: add support for --color

From: Paul Eggert <[email-masked]>
Date: Fri, 11 Sep 2015 15:14:53 -0700

Eric Blake wrote:
> It seems like the only safe way is to block
> TSTP except for in places where you know that you do NOT have pending
> data that would mess with the terminal, even if the cost of getting the
> process to a point where it will actually stop in response to the user
> request takes longer.

That's one way to do it, yes.  In practice, though, it's easier (and probably 
faster) to do what GNU ls does, namely to have the the signal handler just set a 
volatile flag, and to periodically inspect the flag during normal computation in 
places where you can easily arrange for the terminal to be in a known state 
before acting on the signal.