On Mon, Jan 16, 2017 at 05:33:44PM -0800, Jacob Keller wrote: > > I am certainly sympathetic to the idea that the "?" is ugly and > > potentially confusing. But I think it's at least a step forward for this > > particular example. > > Would it be possible to convert the CR to a literal \r printing? Since > it's pretty common to show these characters as slash-escaped? (Or is > that too much of a Unix world thing?) I know I'd find \r less > confusing than '?' I discussed this in the original commit message. Yes, it's possible, but it's a little tricky. We want to fprintf() the whole thing as a unit (to increase the chances of it being done in an atomic write()). We don't want to use a dynamic buffer, since we might be called from a signal handler, or when malloc has failed, etc. So I tried to stick to something that could reliably done in place. We could probably get by with 2 static buffers and copy from one to the other (if stack space is an issue, the current one is 4K, which is probably excessively large anyway). Mostly I just assumed that it was highly unlikely anybody would see this escaping in the first place. So I tried to go with the simplest solution. -Peff