summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStan Hu <stanhu@gmail.com>2016-03-25 00:39:22 -0700
committerStan Hu <stanhu@gmail.com>2016-03-28 07:43:42 -0700
commit191b9e3f05e8fa882e3eaf29cb4f85a942038987 (patch)
treeb4be12f8234f1f65605ca2621f8c3b8cc6fef90a
parent30e4d3ce9a18340c689557cd0c7b5f69e48795d4 (diff)
downloadgitlab-ce-191b9e3f05e8fa882e3eaf29cb4f85a942038987.tar.gz
Gracefully handle notes on deleted commits in merge requests
Closes #3250
-rw-r--r--CHANGELOG1
-rw-r--r--app/helpers/notes_helper.rb6
-rw-r--r--app/views/projects/notes/discussions/_commit.html.haml7
3 files changed, 10 insertions, 4 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 7e9a447a8f6..507830b575b 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -8,6 +8,7 @@ v 8.7.0 (unreleased)
- Add links to CI setup documentation from project settings and builds pages
- Implement 'Groups View' as an option for dashboard preferences !3379 (Elias W.)
- Implement 'TODOs View' as an option for dashboard preferences !3379 (Elias W.)
+ - Gracefully handle notes on deleted commits in merge requests (Stan Hu)
v 8.6.2 (unreleased)
- Comments on confidential issues don't show up in activity feed to non-members
diff --git a/app/helpers/notes_helper.rb b/app/helpers/notes_helper.rb
index 53c543c28c5..698f90cb27a 100644
--- a/app/helpers/notes_helper.rb
+++ b/app/helpers/notes_helper.rb
@@ -5,8 +5,10 @@ module NotesHelper
end
def note_target_fields(note)
- hidden_field_tag(:target_type, note.noteable.class.name.underscore) +
- hidden_field_tag(:target_id, note.noteable.id)
+ if note.noteable
+ hidden_field_tag(:target_type, note.noteable.class.name.underscore) +
+ hidden_field_tag(:target_id, note.noteable.id)
+ end
end
def note_editable?(note)
diff --git a/app/views/projects/notes/discussions/_commit.html.haml b/app/views/projects/notes/discussions/_commit.html.haml
index 3da2f2060b8..f67ec8db942 100644
--- a/app/views/projects/notes/discussions/_commit.html.haml
+++ b/app/views/projects/notes/discussions/_commit.html.haml
@@ -1,4 +1,6 @@
- note = discussion_notes.first
+- commit = note.noteable
+- commit_description = commit ? 'commit' : 'a deleted commit'
.discussion.js-toggle-container{ class: note.discussion_id }
.discussion-header
.discussion-actions
@@ -7,8 +9,9 @@
Show/hide discussion
%div
= link_to_member(@project, note.author, avatar: false)
- started a discussion on commit
- = link_to(note.noteable.short_id, namespace_project_commit_path(note.project.namespace, note.project, note.noteable), class: 'monospace')
+ %p started a discussion on #{commit_description}
+ - if commit
+ = link_to(commit.short_id, namespace_project_commit_path(note.project.namespace, note.project, note.noteable), class: 'monospace')
.last-update.hide.js-toggle-content
- last_note = discussion_notes.last
last updated by