X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?p=pspp-builds.git;a=blobdiff_plain;f=src%2Fdata%2Fpor-file-reader.c;h=a463124274a20c6cd62e1071f15c51cd95edcb3a;hp=cd8b213e8d74062bffd5b6e344a1d29047b7f9a9;hb=b5c82cc9aabe7e641011130240ae1b2e84348e23;hpb=91a5888ad22ff93d212c9534d720d8f8bf52e56b diff --git a/src/data/por-file-reader.c b/src/data/por-file-reader.c index cd8b213e..a4631242 100644 --- a/src/data/por-file-reader.c +++ b/src/data/por-file-reader.c @@ -882,17 +882,30 @@ pfm_detect (FILE *file) { unsigned char header[464]; char trans[256]; - int cooked_cnt, raw_cnt; + int cooked_cnt, raw_cnt, line_len; int i; cooked_cnt = raw_cnt = 0; + line_len = 0; while (cooked_cnt < sizeof header) { int c = getc (file); if (c == EOF || raw_cnt++ > 512) return false; - else if (c != '\n' && c != '\r') - header[cooked_cnt++] = c; + else if (c == '\n') + { + while (line_len < 80 && cooked_cnt < sizeof header) + { + header[cooked_cnt++] = ' '; + line_len++; + } + line_len = 0; + } + else if (c != '\r') + { + header[cooked_cnt++] = c; + line_len++; + } } memset (trans, 0, 256);