summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/controllers/projects/merge_requests_controller.rb16
1 files changed, 10 insertions, 6 deletions
diff --git a/app/controllers/projects/merge_requests_controller.rb b/app/controllers/projects/merge_requests_controller.rb
index 33c1a1feff7..d07fa8cb79a 100644
--- a/app/controllers/projects/merge_requests_controller.rb
+++ b/app/controllers/projects/merge_requests_controller.rb
@@ -122,12 +122,16 @@ class Projects::MergeRequestsController < Projects::ApplicationController
end
def validates_merge_request
- # Show git not found page if target branch doesn't exist
- return invalid_mr unless @project.repository.branch_names.include?(@merge_request.target_branch)
-
- # Show git not found page if source branch doesn't exist
- # and there is no saved commits between source & target branch
- return invalid_mr if !@project.repository.branch_names.include?(@merge_request.source_branch) && @merge_request.commits.blank?
+ # Show git not found page
+ # if there is no saved commits between source & target branch
+ if @merge_request.commits.blank?
+ # and
+ # if source target doesn't exist
+ return invalid_mr if !@project.repository.branch_names.include?(@merge_request.target_branch)
+
+ # or if source branch doesn't exist
+ return invalid_mr if !@project.repository.branch_names.include?(@merge_request.source_branch)
+ end
end
def define_show_vars