libbb: introduce fputc_printable (from ed)

netstat: print control chars as ^C etc
vi: style fixlet

function                                             old     new   delta
fputc_printable                                        -     100    +100
unix_do_one                                          451     487     +36
printLines                                           258     190     -68
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 1/1 up/down: 136/-68)            Total: 68 bytes
This commit is contained in:
Denis Vlasenko
2007-12-30 01:59:53 +00:00
parent fcd878efcd
commit d3c042fc60
5 changed files with 19 additions and 22 deletions

View File

@@ -847,20 +847,8 @@ static int printLines(int num1, int num2, int expandFlag)
count--;
while (count-- > 0) {
ch = *cp++;
if (ch & 0x80) {
fputs("M-", stdout);
ch &= 0x7f;
}
if (ch < ' ') {
bb_putchar('^');
ch += '@';
}
if (ch == 0x7f) {
bb_putchar('^');
ch = '?';
}
bb_putchar(ch);
ch = (unsigned char) *cp++;
fputc_printable(ch | PRINTABLE_META, stdout);
}
fputs("$\n", stdout);