Permalink
Browse files

Merge pull request #4809 from cfeist/feist-sqlite-binary-corruption

Fix for SQLite binary data corrupter (to master branch)
  • Loading branch information...
2 parents 7bfdbea + 6614668 commit 78d5d6f8688bb7c45ba9a3ef893682231130da3f @tenderlove tenderlove committed Feb 1, 2012
@@ -6,26 +6,11 @@ module ActiveRecord
module ConnectionAdapters #:nodoc:
class SQLiteColumn < Column #:nodoc:
class << self
- def string_to_binary(value)
- value.gsub(/\0|\%/n) do |b|
- case b
- when "\0" then "%00"
- when "%" then "%25"
- end
- end
- end
-
def binary_to_string(value)
if value.encoding != Encoding::ASCII_8BIT
value = value.force_encoding(Encoding::ASCII_8BIT)
end
-
- value.gsub(/%00|%25/n) do |b|
- case b
- when "%00" then "\0"
- when "%25" then "%"
- end
- end
+ value
end
end
end
@@ -0,0 +1 @@
+%00
@@ -8,7 +8,7 @@
require 'models/binary'
class BinaryTest < ActiveRecord::TestCase
- FIXTURES = %w(flowers.jpg example.log)
+ FIXTURES = %w(flowers.jpg example.log test.txt)
def test_mixed_encoding
str = "\x80"

0 comments on commit 78d5d6f

Please sign in to comment.