[#707] Fix encoding error on wiki diffs on Ruby 1.9
WikiDiff#to_html returns a string with ASCII encoding if the WikiJournal content has been Zlib compressed because Zlib::Inflate.inflate returns strings with ASCII encoding. Forcing the encoding to be UTF8 fixes this bug.
This commit is contained in:
parent
0462fa973b
commit
60db868470
|
@ -104,7 +104,12 @@ class WikiContent < ActiveRecord::Base
|
|||
def text
|
||||
@text ||= case changes["compression"]
|
||||
when "gzip"
|
||||
Zlib::Inflate.inflate(changes["data"])
|
||||
data = Zlib::Inflate.inflate(changes["data"])
|
||||
if data.respond_to? :force_encoding
|
||||
data.force_encoding("UTF-8")
|
||||
else
|
||||
data
|
||||
end
|
||||
else
|
||||
# uncompressed data
|
||||
changes["data"]
|
||||
|
|
Loading…
Reference in New Issue