From ea4077526447b7e07000bbb66b0d0042db1fd499 Mon Sep 17 00:00:00 2001 From: samhowley Date: Mon, 4 May 2015 13:40:35 +1000 Subject: [PATCH] cell_to_csv for double quote escaping changed all tr to gsub tr is not escaping double quote characters correctly, replaced with call to gsub. --- lib/roo/base.rb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/roo/base.rb b/lib/roo/base.rb index b49790f..2a89eef 100644 --- a/lib/roo/base.rb +++ b/lib/roo/base.rb @@ -663,9 +663,9 @@ def cell_to_csv(row, col, sheet) case celltype(row, col, sheet) when :string - %("#{onecell.tr('"', '""')}") unless onecell.empty? + %("#{onecell.gsub('"', '""')}") unless onecell.empty? when :boolean - %("#{onecell.tr('"', '""').downcase}") + %("#{onecell.gsub('"', '""').downcase}") when :float, :percentage if onecell == onecell.to_i onecell.to_i.to_s @@ -675,7 +675,7 @@ def cell_to_csv(row, col, sheet) when :formula case onecell when String - %("#{onecell.tr('"', '""')}") unless onecell.empty? + %("#{onecell.gsub('"', '""')}") unless onecell.empty? when Float if onecell == onecell.to_i onecell.to_i.to_s @@ -692,7 +692,7 @@ def cell_to_csv(row, col, sheet) when :time integer_to_timestring(onecell) when :link - %("#{onecell.url.tr('"', '""')}") + %("#{onecell.url.gsub('"', '""')}") else fail "unhandled celltype #{celltype(row, col, sheet)}" end || ''