Euphoria
Ticket #1021:
EGets() not handling carriage return line breaks
-
Reported by
ghaberek
in March
Details
1. Comment by ghaberek
in March
Proposed correction:
diff --git a/source/be_runtime.c b/source/be_runtime.c
index 5eac628..97178d6 100644
--- a/source/be_runtime.c
+++ b/source/be_runtime.c
@@ -3894,6 +3894,15 @@ object EGets(object file_no)
/* read a character */
c = getc(f);
+ /* test for CR or CRLF */
+ if (c == '\r') {
+ c = getc(f);
+ if (c != '\n' && c != EOF) {
+ ungetc(c, f);
+ c = '\n';
+ }
+ }
+
if (c == EOF) {
break;
}
2. Comment by jimcbrown
in March
Looks good to me.