summaryrefslogtreecommitdiff
path: root/app/models/merge_request_diff.rb
diff options
context:
space:
mode:
authorJames Lopez <james@jameslopez.es>2016-07-01 13:03:37 +0200
committerJames Lopez <james@jameslopez.es>2016-07-19 09:59:54 +0200
commitbf1ea8c6fe34abe7bde8913f6a6d88eff4d77fc3 (patch)
tree7efe0308af51ae90f2eb5044757614bb9828b2f9 /app/models/merge_request_diff.rb
parent78cd5b8d0e0a69d7b1681bf98b17ccb7a22dde5f (diff)
downloadgitlab-ce-fix/import-export-encoding.tar.gz
Squashed - fix encoding issuefix/import-export-encoding
WIP - trying to replicate UTF-8 error fix spec fixing encoding issue and another spec, to do with MR diffs fix issue and spec failure Add changelog and bumped up I/E version fix spec based on feedback - omitted target project
Diffstat (limited to 'app/models/merge_request_diff.rb')
-rw-r--r--app/models/merge_request_diff.rb9
1 files changed, 9 insertions, 0 deletions
diff --git a/app/models/merge_request_diff.rb b/app/models/merge_request_diff.rb
index feaba925bad..3f520c8f3ff 100644
--- a/app/models/merge_request_diff.rb
+++ b/app/models/merge_request_diff.rb
@@ -1,6 +1,7 @@
class MergeRequestDiff < ActiveRecord::Base
include Sortable
include Importable
+ include EncodingHelper
# Prevent store of diff if commits amount more then 500
COMMITS_SAFE_SIZE = 100
@@ -211,6 +212,14 @@ class MergeRequestDiff < ActiveRecord::Base
branch_base_commit.try(:sha)
end
+ def utf8_st_diffs
+ st_diffs.map do |diff|
+ diff.each do |k, v|
+ diff[k] = encode_utf8(v) if v.respond_to?(:encoding)
+ end
+ end
+ end
+
#
# #save or #update_attributes providing changes on serialized attributes do a lot of
# serialization and deserialization calls resulting in bad performance.