diff --git a/app/models/merge_request.rb b/app/models/merge_request.rb index 8924587..b2ad1b7 100644 --- a/app/models/merge_request.rb +++ b/app/models/merge_request.rb @@ -214,9 +214,9 @@ class MergeRequest < ActiveRecord::Base end def dump_diffs(diffs) - if broken_diffs? + if diffs == broken_diffs broken_diffs - else + elsif diffs.respond_to?(:map) diffs.map(&:to_hash) end end @@ -224,7 +224,7 @@ class MergeRequest < ActiveRecord::Base def load_diffs(raw) if raw == broken_diffs broken_diffs - else + elsif raw.respond_to?(:map) raw.map { |hash| Gitlab::Git::Diff.new(hash) } end end diff --git a/app/views/merge_requests/show/_diffs.html.haml b/app/views/merge_requests/show/_diffs.html.haml index 0807454..033d66a 100644 --- a/app/views/merge_requests/show/_diffs.html.haml +++ b/app/views/merge_requests/show/_diffs.html.haml @@ -4,7 +4,7 @@ %h4.nothing_here_message Can't load diff. You can - = link_to "download it", project_merge_request_path(@project, @merge_request), format: :diff, class: "vlink" + = link_to "download it", project_merge_request_path(@project, @merge_request, format: :diff), class: "vlink" instead. - else %h4.nothing_here_message Nothing to merge -- libgit2 0.21.2