Skip to content
Snippets Groups Projects
Commit b7558a20 authored by Dmitriy Zaporozhets's avatar Dmitriy Zaporozhets
Browse files

Removed encoding monkey patch

parent 52f6df72
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -129,4 +129,8 @@ module ApplicationHelper
"ui_mars"
end
end
def string_to_utf8 str
Gitlabhq::Encode.utf8 str
end
end
class Commit
include ActiveModel::Conversion
include Gitlabhq::Encode
extend ActiveModel::Naming
 
attr_accessor :commit
Loading
Loading
@@ -90,7 +91,7 @@ class Commit
end
 
def safe_message
message
utf8 message
end
 
def created_at
Loading
Loading
@@ -102,11 +103,11 @@ class Commit
end
 
def author_name
author.name.force_encoding("UTF-8")
utf8 author.name
end
 
def committer_name
committer.name
utf8 committer.name
end
 
def committer_email
Loading
Loading
Loading
Loading
@@ -3,24 +3,24 @@
%li
- if diff.deleted_file
%span.removed_file
%a{:href => "##{diff.a_path}"}
= diff.a_path
%a{:href => "##{diff.old_path}"}
= diff.old_path
= image_tag "diff_file_delete.png"
- elsif diff.renamed_file
%span.moved_file
%a{:href => "##{diff.b_path}"}
= diff.a_path
%a{:href => "##{diff.new_path}"}
= diff.old_path
= "->"
= diff.b_path
= diff.new_path
= image_tag "diff_file_notice.png"
- elsif diff.new_file
%span.new_file
%a{:href => "##{diff.b_path}"}
= diff.b_path
%a{:href => "##{diff.new_path}"}
= diff.new_path
= image_tag "diff_file_add.png"
- else
%span.edit_file
%a{:href => "##{diff.b_path}"}
= diff.b_path
%a{:href => "##{diff.new_path}"}
= diff.new_path
= image_tag "diff_file_info.png"
 
Loading
Loading
@@ -17,16 +17,16 @@
- unless @suppress_diff
- diffs.each_with_index do |diff, i|
- next if diff.diff.empty?
- file = (@commit.tree / diff.b_path)
- file = (@commit.prev_commit.tree / diff.a_path) unless file
- file = (@commit.tree / diff.new_path)
- file = (@commit.prev_commit.tree / diff.old_path) unless file
- next unless file
.diff_file
.diff_file_header
- if diff.deleted_file
%strong{:id => "#{diff.a_path}"}= diff.a_path
%strong{:id => "#{diff.old_path}"}= diff.old_path
- else
= link_to tree_file_project_ref_path(@project, @commit.id, diff.b_path) do
%strong{:id => "#{diff.b_path}"}= diff.b_path
= link_to tree_file_project_ref_path(@project, @commit.id, diff.new_path) do
%strong{:id => "#{diff.new_path}"}= diff.new_path
%br/
.diff_file_content
- if file.text?
Loading
Loading
Loading
Loading
@@ -10,38 +10,20 @@ end
#monkey patch raw_object from string
Grit::GitRuby::Internal::RawObject.class_eval do
def content
transcoding(@content)
rescue Exception => ex
Rails.logger.error ex.message
@content
end
end
 
private
def transcoding(content)
content ||= ""
hash = CharlockHolmes::EncodingDetector.detect(content)
if hash
return content if hash[:type] == :binary
if hash[:encoding] == "UTF-8"
content = if hash[:confidence] < 100
content
else
content.force_encoding("UTF-8")
end
 
return content
end
Grit::Diff.class_eval do
def old_path
Gitlabhq::Encode.utf8 a_path
end
 
CharlockHolmes::Converter.convert(content, hash[:encoding], 'UTF-8') if hash[:encoding]
else
content.force_encoding("UTF-8")
end
def new_path
Gitlabhq::Encode.utf8 b_path
end
end
 
Grit::Git.git_timeout = GIT_OPTS["git_timeout"]
Grit::Git.git_max_size = GIT_OPTS["git_max_size"]
module Gitlabhq
module Encode
extend self
def utf8 message
hash = CharlockHolmes::EncodingDetector.detect(message)
if hash[:encoding]
CharlockHolmes::Converter.convert(message, hash[:encoding], 'UTF-8')
else
message
end.force_encoding("utf-8")
end
end
end
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment