summaryrefslogtreecommitdiffstats
path: root/lib/redmine
diff options
context:
space:
mode:
authorGo MAEDA <maeda@farend.jp>2018-04-27 09:14:36 +0000
committerGo MAEDA <maeda@farend.jp>2018-04-27 09:14:36 +0000
commitb1781507617d9386c8545a28941fac163afd50fa (patch)
treeb3d2d5ef8fb427b99f50861bb092363fc78ee24f /lib/redmine
parent087067678eef6655fac3a33e0fa695f69915acc2 (diff)
downloadredmine-b1781507617d9386c8545a28941fac163afd50fa.tar.gz
redmine-b1781507617d9386c8545a28941fac163afd50fa.zip
Show renames in diff preview (#28295).
Patch by Gregor Schmidt. git-svn-id: http://svn.redmine.org/redmine/trunk@17313 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'lib/redmine')
-rw-r--r--lib/redmine/unified_diff.rb7
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/redmine/unified_diff.rb b/lib/redmine/unified_diff.rb
index 7e2e20286..ae68d5dfc 100644
--- a/lib/redmine/unified_diff.rb
+++ b/lib/redmine/unified_diff.rb
@@ -49,7 +49,7 @@ module Redmine
# Class that represents a file diff
class DiffTable < Array
- attr_reader :file_name
+ attr_reader :file_name, :previous_file_name
# Initialize with a Diff file and the type of Diff View
# The type view must be inline or sbs (side_by_side)
@@ -60,6 +60,7 @@ module Redmine
@type = type
@style = style
@file_name = nil
+ @previous_file_name = nil
@git_diff = false
end
@@ -120,8 +121,12 @@ module Redmine
# keep the original file name
@file_name = file_name.sub(%r{^a/}, '')
else
+ # remove leading a/
+ @previous_file_name = file_name.sub(%r{^a/}, '') unless file_name == "/dev/null"
# remove leading b/
@file_name = arg.sub(%r{^b/}, '')
+
+ @previous_file_name = nil if @previous_file_name == @file_name
end
elsif @style == "Subversion"
# removing trailing "(revision nn)"