Skip to content
Snippets Groups Projects
Commit cd0750e0 authored by Rémy Coutable's avatar Rémy Coutable Committed by Robert Speicher
Browse files

Prevent private project name and namespace from leaking in the new MR view


Fixes #15591.

Signed-off-by: default avatarRémy Coutable <remy@rymai.me>
parent b79c5c40
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -7,6 +7,9 @@ module MergeRequests
merge_request.can_be_created = false
merge_request.compare_commits = []
merge_request.source_project = project unless merge_request.source_project
merge_request.target_project = nil unless can?(current_user, :read_project, merge_request.target_project)
merge_request.target_project ||= (project.forked_from_project || project)
merge_request.target_branch ||= merge_request.target_project.default_branch
 
Loading
Loading
Loading
Loading
@@ -30,4 +30,14 @@ feature 'Create New Merge Request', feature: true, js: true do
 
expect(page).to have_content 'git checkout -b orphaned-branch origin/orphaned-branch'
end
context 'when target project cannot be viewed by the current user' do
it 'does not leak the private project name & namespace' do
private_project = create(:project, :private)
visit new_namespace_project_merge_request_path(project.namespace, project, merge_request: { target_project_id: private_project.id })
expect(page).not_to have_content private_project.to_reference
end
end
end
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment