blob: ab47860fc3ee9ee8c7f4f19187e5136b118c046b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
#include "buffer.h"
#include "exit.h"
main()
{
register int n;
register char *x;
char ch;
register int flagcr = 0;
for (;;) {
n = buffer_feed(buffer_0);
if (n < 0) _exit(111);
if (!n) {
if (flagcr) buffer_PUTC(buffer_1,"\r"[0]);
buffer_flush(buffer_1);
_exit(0);
}
x = buffer_PEEK(buffer_0);
buffer_SEEK(buffer_0,n);
while (n > 0) {
ch = *x++; --n;
if (!flagcr) {
if (ch == '\r') { flagcr = 1; continue; }
buffer_PUTC(buffer_1,ch);
continue;
}
if (ch != '\n') {
buffer_PUTC(buffer_1,"\r"[0]);
if (ch == '\r') continue;
}
flagcr = 0;
buffer_PUTC(buffer_1,ch);
}
}
}
|