version 1.5, 2002/02/16 21:27:56 |
version 1.6, 2003/04/05 20:30:45 |
|
|
char *cp, *dp; |
char *cp, *dp; |
int dcol; |
int dcol; |
int ocol; |
int ocol; |
|
size_t len; |
|
|
ocol = 0; |
ocol = 0; |
dcol = 0; |
dcol = 0; |
cp = genbuf, dp = linebuf; |
cp = genbuf; |
|
dp = linebuf; |
|
len = sizeof linebuf; |
|
|
for (;;) { |
for (;;) { |
switch (*cp) { |
switch (*cp) { |
|
|
|
|
while (((ocol + 8) &~ 07) <= dcol) { |
while (((ocol + 8) &~ 07) <= dcol) { |
if (ocol + 1 == dcol) |
if (ocol + 1 == dcol) |
break; |
break; |
*dp++ = '\t'; |
if (len > 1) { |
|
*dp++ = '\t'; |
|
len--; |
|
} |
ocol += 8; |
ocol += 8; |
ocol &= ~07; |
ocol &= ~07; |
} |
} |
while (ocol < dcol) { |
while (ocol < dcol) { |
*dp++ = ' '; |
if (len > 1) { |
|
*dp++ = ' '; |
|
len--; |
|
} |
ocol++; |
ocol++; |
} |
} |
if (*cp == 0 || c == 0) { |
if (*cp == 0 || c == 0) { |
strcpy(dp, cp); |
strlcpy(dp, cp, len); |
return; |
return; |
} |
} |
*dp++ = *cp; |
*dp++ = *cp; |
ocol++, dcol++; |
len--; |
|
ocol++; |
|
dcol++; |
} |
} |
cp++; |
cp++; |
} |
} |