#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#include <errno.h>
#include <getopt.h>
#include "cdecl.h"
}
}
- if (filename) {
- infile = fopen(filename, "r");
- if (!infile) {
- perror(filename);
- return EXIT_FAILURE;
- }
+ if (filename && !freopen(filename, "r", stdin)) {
+ print_error("%s: %s", filename, strerror(errno));
+ return EXIT_FAILURE;
}
- while ((rc = getline(&line, &n, infile)) >= 0) {
- if (rc > 0 && line[rc-1] == '\n')
- line[rc-1] = 0;
+ while (test_getline(&line, &n)) {
if (do_normalize(line, n) < 0)
ret = EXIT_FAILURE;
}