From d3fa9c9539aac42844a297a99ef56254ce1c06a3 Mon Sep 17 00:00:00 2001 From: Stan Hu Date: Mon, 15 Apr 2019 10:55:45 -0700 Subject: Fix remove_source_branch merge request API handling Users attempting to set merge requests to `remove_source_branch` to `false` would encounter an Error 500 because the UpdateService and API checked `present?`, which would always return `false`. We now just use `has_key?` to decide whether the parameter is present. Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/60530 --- lib/api/merge_requests.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lib/api/merge_requests.rb') diff --git a/lib/api/merge_requests.rb b/lib/api/merge_requests.rb index 1cc0ecc6df8..ce85772e4ed 100644 --- a/lib/api/merge_requests.rb +++ b/lib/api/merge_requests.rb @@ -336,7 +336,7 @@ module API merge_request = find_merge_request_with_access(params.delete(:merge_request_iid), :update_merge_request) mr_params = declared_params(include_missing: false) - mr_params[:force_remove_source_branch] = mr_params.delete(:remove_source_branch) if mr_params[:remove_source_branch].present? + mr_params[:force_remove_source_branch] = mr_params.delete(:remove_source_branch) if mr_params.has_key?(:remove_source_branch) mr_params = convert_parameters_from_legacy_format(mr_params) merge_request = ::MergeRequests::UpdateService.new(user_project, current_user, mr_params).execute(merge_request) -- cgit v1.2.1