diff -up procps-3.2.7/proc/escape.c.p8 procps-3.2.7/proc/escape.c --- procps-3.2.7/proc/escape.c.p8 2005-01-05 21:50:26.000000000 +0100 +++ procps-3.2.7/proc/escape.c 2008-09-01 11:31:15.000000000 +0200 @@ -79,6 +79,7 @@ static int escape_str_utf8(char *restric // multibyte - printable // Got space? if (my_cells+wlen > *maxcells || my_bytes+1+len >= bufsize) break; +#ifdef OUTPUT_PARANOID // 0x9b is control byte for some terminals if (memchr(src, 0x9B, len)) { // unsafe multibyte @@ -87,13 +88,16 @@ static int escape_str_utf8(char *restric my_cells++; my_bytes++; } else { +#endif // safe multibyte memcpy(dst, src, len); my_cells += wlen; dst += len; my_bytes += len; src += len; +#ifdef OUTPUT_PARANOID } +#endif } } //fprintf(stdout, "cells: %d\n", my_cells);