summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/csv/parser.rb1
-rw-r--r--test/csv/parse/test_skip_lines.rb6
2 files changed, 7 insertions, 0 deletions
diff --git a/lib/csv/parser.rb b/lib/csv/parser.rb
index 68fe238194..2fb3b0a46e 100644
--- a/lib/csv/parser.rb
+++ b/lib/csv/parser.rb
@@ -785,6 +785,7 @@ class CSV
end
def skip_line?(line)
+ line = line.delete_suffix(@row_separator)
case @skip_lines
when String
line.include?(@skip_lines)
diff --git a/test/csv/parse/test_skip_lines.rb b/test/csv/parse/test_skip_lines.rb
index 2f7e6c8ddd..98d67ae51c 100644
--- a/test/csv/parse/test_skip_lines.rb
+++ b/test/csv/parse/test_skip_lines.rb
@@ -109,4 +109,10 @@ class TestCSVParseSkipLines < Test::Unit::TestCase
:liberal_parsing => true,
:skip_lines => /^$/))
end
+
+ def test_crlf
+ assert_equal([["a", "b"]],
+ CSV.parse("a,b\r\n,\r\n",
+ :skip_lines => /^,+$/))
+ end
end