[Rt-commit] rt branch, 4.4-trunk, updated. rt-4.4.4-197-g72d0156301

? sunnavy sunnavy at bestpractical.com
Thu Dec 31 15:42:25 EST 2020


The branch, 4.4-trunk has been updated
       via  72d0156301b181c8f3d1ee62c6a0c924c6391398 (commit)
       via  755ebc672687b0ff4920cec027f0e3f7eb6acc67 (commit)
      from  c237545f3acb8160582e115b425ff44737f95957 (commit)

Summary of changes:
 lib/RT/Interface/Web.pm | 19 +++++++++++--------
 1 file changed, 11 insertions(+), 8 deletions(-)

- Log -----------------------------------------------------------------
commit 755ebc672687b0ff4920cec027f0e3f7eb6acc67
Author: Aaron Trevena <ast at bestpractical.com>
Date:   Tue Sep 15 11:09:47 2020 +0100

    Fix error when removing multiple holders of an asset
    
    Removing more than one holder for an asset failed with the following error:
    "Could not load user 'ARRAY(0xa38ce70).".
    
    Add logic to check for and handle multiple values in RemoveRoleMember-HeldBy
    form parameter.

diff --git a/lib/RT/Interface/Web.pm b/lib/RT/Interface/Web.pm
index af03da1e4b..d28db4c211 100644
--- a/lib/RT/Interface/Web.pm
+++ b/lib/RT/Interface/Web.pm
@@ -4182,14 +4182,17 @@ sub ProcessAssetRoleMembers {
                 $is = $1;
             }
 
-            my ($ok, $msg) = $object->$method(
-                Type        => $role,
-                ($ARGS{$arg} =~ /\D/
-                    ? ($is => $ARGS{$arg})
-                    : (PrincipalId => $ARGS{$arg})
-                ),
-            );
-            push @results, $msg;
+            my @members = ( ref( $ARGS{$arg} ) eq 'ARRAY' ) ? ( @{ $ARGS{$arg} } ) : ( $ARGS{$arg} );
+            foreach my $member (@members) {
+                my ( $ok, $msg ) = $object->$method(
+                    Type => $role,
+                    (   $member =~ /\D/
+                        ? ( $is => $member )
+                        : ( PrincipalId => $member )
+                    ),
+                );
+                push @results, $msg;
+            }
         }
         elsif ($arg =~ /^RemoveAllRoleMembers-(.+)$/) {
             my $role = $1;

commit 72d0156301b181c8f3d1ee62c6a0c924c6391398
Merge: c237545f3a 755ebc6726
Author: sunnavy <sunnavy at bestpractical.com>
Date:   Fri Jan 1 04:32:58 2021 +0800

    Merge branch '4.4/delete-asset-multiple-holders' into 4.4-trunk


-----------------------------------------------------------------------


More information about the rt-commit mailing list