garydgregory commented on a change in pull request #60: Fix CSV-149 and CSV-195
URL: https://github.com/apache/commons-csv/pull/60#discussion_r398591805
 
 

 ##########
 File path: src/main/java/org/apache/commons/csv/ExtendedBufferedReader.java
 ##########
 @@ -88,11 +89,13 @@ public int read(final char[] buf, final int offset, final 
int length) throws IOE
 
             for (int i = offset; i < offset + len; i++) {
                 final char ch = buf[i];
+                final int previous = i > 0 ? buf[i - 1] : lastChar;
                 if (ch == LF) {
-                    if (CR != (i > 0 ? buf[i - 1] : lastChar)) {
+                    if (CR != previous) {
                         eolCounter++;
                     }
-                } else if (ch == CR) {
+                } else if ((ch == CR)
+                        || (ch == END_OF_STREAM && previous != LF && previous 
!= CR)) {
 
 Review comment:
   This looks wrong as `ch == END_OF_STREAM` will always be false since a 
`char` cannot be negative. If you remove `ch == END_OF_STREAM &&` from the 
line, the test still passes. Either this code is wrong or the test does not 
cover the intent of this expression.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to