From 44f1ac281c7d08a0936ea6cc4af6f04da877b59a Mon Sep 17 00:00:00 2001 From: Andrii V Date: Wed, 18 Jun 2025 15:58:51 +0200 Subject: [PATCH] fix: permission groups - refactored a bit --- rhodecode/lib/auth.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/rhodecode/lib/auth.py b/rhodecode/lib/auth.py index 1029f879..8a05972a 100644 --- a/rhodecode/lib/auth.py +++ b/rhodecode/lib/auth.py @@ -849,8 +849,9 @@ class PermissionCalculator(object): multiple_counter[r_k] += 1 if multiple_counter[r_k] > 1: - cur_perm = self.permissions_repository_branches.perm_origin_stack[r_k][pattern] - cur_perm = cur_perm[0][0] if cur_perm else "branch.none" + # Get the previous permission for this pattern, with fallback, from perm_origin_stack that keeps history + pattern_perms = self.permissions_repository_branches.perm_origin_stack.get(r_k, {}).get(pattern, []) + cur_perm = pattern_perms[0][0] if pattern_perms else "branch.none" p = self._choose_permission(p, cur_perm) self.permissions_repository_branches[r_k] = {pattern: p}, o