summaryrefslogtreecommitdiffstats
path: root/Parser/tokenizer.c
diff options
context:
space:
mode:
Diffstat (limited to 'Parser/tokenizer.c')
-rw-r--r--Parser/tokenizer.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/Parser/tokenizer.c b/Parser/tokenizer.c
index 165e8be..3bf0fee 100644
--- a/Parser/tokenizer.c
+++ b/Parser/tokenizer.c
@@ -303,13 +303,16 @@ tok_nextc(tok)
done = tok->inp[-1] == '\n';
}
tok->cur = tok->buf + cur;
+#ifndef macintosh
/* replace "\r\n" with "\n" */
+ /* For Mac we leave the \r, giving a syntax error */
pt = tok->inp - 2;
if (pt >= tok->buf && *pt == '\r') {
*pt++ = '\n';
*pt = '\0';
tok->inp = pt;
}
+#endif
}
if (tok->done != E_OK) {
if (tok->prompt != NULL)
@@ -560,6 +563,14 @@ tok_get(tok, p_start, p_end)
return NEWLINE;
}
+#ifdef macintosh
+ if (c == '\r') {
+ fprintf(stderr, "File contains \\r characters (incorrect line endings?)\n");
+ tok->done = E_TOKEN;
+ tok->cur = tok->inp;
+ return ERRORTOKEN;
+ }
+#endif
/* Period or number starting with period? */
if (c == '.') {
c = tok_nextc(tok);