diff options
author | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2012-04-19 23:06:45 +0300 |
---|---|---|
committer | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2012-04-19 23:06:45 +0300 |
commit | 45b18365d5f409f196a02a4e6e2b77b8ebef909b (patch) | |
tree | fcf46f072aaeaf463ba32e8c9e8b42e7b227616f | |
parent | ac3c23f9337fa8388bac15c3585313de84bcd67b (diff) | |
download | gitlab-ce-45b18365d5f409f196a02a4e6e2b77b8ebef909b.tar.gz |
Fix an issue with MR unavailable if remove source branch
-rw-r--r-- | app/controllers/merge_requests_controller.rb | 13 |
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 |