Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2012-04-20 00:06:45 +0400
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2012-04-20 00:06:45 +0400
commit45b18365d5f409f196a02a4e6e2b77b8ebef909b (patch)
treefcf46f072aaeaf463ba32e8c9e8b42e7b227616f
parentac3c23f9337fa8388bac15c3585313de84bcd67b (diff)
Fix an issue with MR unavailable if remove source branch
-rw-r--r--app/controllers/merge_requests_controller.rb13
1 files changed, 8 insertions, 5 deletions
diff --git a/app/controllers/merge_requests_controller.rb b/app/controllers/merge_requests_controller.rb
index f882028fcab..500406c919c 100644
--- a/app/controllers/merge_requests_controller.rb
+++ b/app/controllers/merge_requests_controller.rb
@@ -34,11 +34,14 @@ class MergeRequestsController < ApplicationController
end
def show
- unless @project.repo.heads.map(&:name).include?(@merge_request.target_branch) &&
- @project.repo.heads.map(&:name).include?(@merge_request.source_branch)
- git_not_found! and return
- end
-
+ # Show git not found page if target branch doesnt exist
+ return git_not_found! unless @project.repo.heads.map(&:name).include?(@merge_request.target_branch)
+
+ # Show git not found page if source branch doesnt exist
+ # and there is no saved commits between source & target branch
+ return git_not_found! if !@project.repo.heads.map(&:name).include?(@merge_request.source_branch) && @merge_request.commits.blank?
+
+ # Build a note object for comment form
@note = @project.notes.new(:noteable => @merge_request)
# Get commits from repository