writerune() should operate on a FILE *
This commit is contained in:
parent
5b5bb82ec0
commit
18850f5dfa
6
expand.c
6
expand.c
|
@ -74,18 +74,18 @@ expand(const char *file, FILE *fp, int tabstop)
|
|||
if (col)
|
||||
col--;
|
||||
bol = 0;
|
||||
writerune(&r);
|
||||
writerune("<stdout>", stdout, &r);
|
||||
break;
|
||||
case '\n':
|
||||
col = 0;
|
||||
bol = 1;
|
||||
writerune(&r);
|
||||
writerune("<stdout>", stdout, &r);
|
||||
break;
|
||||
default:
|
||||
col++;
|
||||
if (r != ' ')
|
||||
bol = 0;
|
||||
writerune(&r);
|
||||
writerune("<stdout>", stdout, &r);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,16 +7,16 @@
|
|||
#include "../utf.h"
|
||||
|
||||
void
|
||||
writerune(Rune *r)
|
||||
writerune(const char *file, FILE *fp, Rune *r)
|
||||
{
|
||||
char buf[UTFmax];
|
||||
int n;
|
||||
|
||||
if ((n = runetochar(buf, r)) > 0) {
|
||||
fwrite(buf, n, 1, stdout);
|
||||
if (ferror(stdout)) {
|
||||
fprintf(stderr, "stdout: write error: %s\n",
|
||||
strerror(errno));
|
||||
fwrite(buf, n, 1, fp);
|
||||
if (ferror(fp)) {
|
||||
fprintf(stderr, "%s: write error: %s\n",
|
||||
file, strerror(errno));
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user