Commit 5e497e66 authored by Robert Speicher's avatar Robert Speicher

Merge branch 'fix-discussions-on-changed-lines' into 'master'

Fix bug where notes weren’t shown in discussion when the code had changed after creation

See merge request !5908
parents 2e34e5f1 080924f9
...@@ -17,6 +17,10 @@ module NoteOnDiff ...@@ -17,6 +17,10 @@ module NoteOnDiff
raise NotImplementedError raise NotImplementedError
end end
def original_line_code
raise NotImplementedError
end
def diff_attributes def diff_attributes
raise NotImplementedError raise NotImplementedError
end end
......
...@@ -57,6 +57,10 @@ class DiffNote < Note ...@@ -57,6 +57,10 @@ class DiffNote < Note
diff_file.position(line) == self.original_position diff_file.position(line) == self.original_position
end end
def original_line_code
self.diff_file.line_code(self.diff_line)
end
def active?(diff_refs = nil) def active?(diff_refs = nil)
return false unless supported? return false unless supported?
return true if for_commit? return true if for_commit?
......
...@@ -12,6 +12,7 @@ class Discussion ...@@ -12,6 +12,7 @@ class Discussion
:for_merge_request?, :for_merge_request?,
:line_code, :line_code,
:original_line_code,
:diff_file, :diff_file,
:for_line?, :for_line?,
:active?, :active?,
......
...@@ -49,6 +49,10 @@ class LegacyDiffNote < Note ...@@ -49,6 +49,10 @@ class LegacyDiffNote < Note
!line.meta? && diff_file.line_code(line) == self.line_code !line.meta? && diff_file.line_code(line) == self.line_code
end end
def original_line_code
self.line_code
end
# Check if this note is part of an "active" discussion # Check if this note is part of an "active" discussion
# #
# This will always return true for anything except MergeRequest noteables, # This will always return true for anything except MergeRequest noteables,
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
.diff-content.code.js-syntax-highlight .diff-content.code.js-syntax-highlight
%table %table
- discussions = { discussion.line_code => discussion } - discussions = { discussion.original_line_code => discussion }
= render partial: "projects/diffs/line", = render partial: "projects/diffs/line",
collection: discussion.truncated_diff_lines, collection: discussion.truncated_diff_lines,
as: :line, as: :line,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment