500 instead of 404 or redirect
Summary
New merge request returns 500 instead of 404 or redirect when source branch not exist, version 8.11.7
Steps to reproduce
Expected behavior
404 page or redirect
Actual behavior
NoMethodError: undefined method `commits' for nil:NilClass
NoMethodError: undefined method `commits' for nil:NilClass
app/services/merge_requests/build_service.rb:32:in `execute'
commits = compare.commits
app/controllers/projects/merge_requests_controller.rb:517:in `build_merge_request'
@merge_request = MergeRequests::BuildService.new(project, current_user, merge_request_params).execute
app/controllers/projects/merge_requests_controller.rb:203:in `new'
build_merge_request
lib/gitlab/request_profiler/middleware.rb:15:in `call'
@app.call(env)
lib/gitlab/middleware/go.rb:16:in `call'
@app.call(env)
...
(95 additional frame(s) were not displayed)