summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJunegunn Choi <junegunn.c@gmail.com>2024-04-04 23:39:29 +0900
committerJunegunn Choi <junegunn.c@gmail.com>2024-04-04 23:39:29 +0900
commit68a35e47354f5757fb74f10628c9a40564604999 (patch)
tree3d42b5b3a2e0e42fa0d856115903d45b7fc181c9
parent9b9ad77e1c330e70c3c3d815f1ff08fc3d82ed55 (diff)
Do not trim CR on Windows when --read0 is set
-rw-r--r--src/reader.go4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/reader.go b/src/reader.go
index 85a988bb..fc9b4edb 100644
--- a/src/reader.go
+++ b/src/reader.go
@@ -127,8 +127,10 @@ func (r *Reader) feed(src io.Reader) {
*/
delim := byte('\n')
+ trimCR := util.IsWindows()
if r.delimNil {
delim = '\000'
+ trimCR = false
}
slab := make([]byte, readerSlabSize)
@@ -157,7 +159,7 @@ func (r *Reader) feed(src io.Reader) {
// Found the delimiter
slice := buf[:i+1]
buf = buf[i+1:]
- if util.IsWindows() && len(slice) >= 2 && slice[len(slice)-2] == byte('\r') {
+ if trimCR && len(slice) >= 2 && slice[len(slice)-2] == byte('\r') {
slice = slice[:len(slice)-2]
} else {
slice = slice[:len(slice)-1]