From 1358c23ca6e4bd498855dab49f00937df06dcb40 Mon Sep 17 00:00:00 2001 From: yystopf Date: Tue, 24 May 2022 11:43:47 +0800 Subject: [PATCH] fix: trasfer project member must remove old permission --- app/services/projects/transfer_service.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/services/projects/transfer_service.rb b/app/services/projects/transfer_service.rb index 7d1214eb8..157263962 100644 --- a/app/services/projects/transfer_service.rb +++ b/app/services/projects/transfer_service.rb @@ -24,7 +24,8 @@ class Projects::TransferService < ApplicationService private def update_owner - project.members.map{|m| m.destroy! if m.user_id == owner.id || (new_owner.is_a?(Organization) && new_owner.is_member?(m.user_id)) } + project.members.map{|m| m.destroy! if m.user_id == owner.id || project.member(new_owner.id) || (new_owner.is_a?(Organization) && new_owner.is_member?(m.user_id)) } + project.set_owner_permission(new_owner) project.update!(user_id: new_owner.id) end