[pmg-devel] applied: [PATCH pmg-api 01/12] RuleCache: remove unnecessary copying of marks

Stoiko Ivanov s.ivanov at proxmox.com
Tue Feb 20 15:42:44 CET 2024


applied this one - Thanks!

On Fri,  9 Feb 2024 13:54:25 +0100
Dominik Csapak <d.csapak at proxmox.com> wrote:

> two things that are wrong here
> * what_match_targets never returns a non empty list
> * we copy the list just returned just to append it to itself again
> 
> My guess is that we meant to copy the original list, not the just
> acquired one, and append it to the one just received. But that never did
> make a difference, since we only ever check for defined-ness on that
> exact list, and the only Object that this applies to (Spam) always
> returns an empty list with the spaminfo (so it's always defined in that
> case).
> 
> Since this was always the behavior AFAICT, just remove the unnecessary
> copy of the list for now. If we encounter any actual bugs with that, we
> can still implement it back in the right way (copy the original list).
> 
> Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
> ---
>  src/PMG/RuleCache.pm | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/src/PMG/RuleCache.pm b/src/PMG/RuleCache.pm
> index b8690ea..51d8a07 100644
> --- a/src/PMG/RuleCache.pm
> +++ b/src/PMG/RuleCache.pm
> @@ -322,9 +322,7 @@ sub what_match {
>  	    my $target_info;
>  	    if ($target_info = $obj->what_match_targets($queue, $element, $msginfo, $dbh)) {
>  		foreach my $k (keys %$target_info) {
> -		    my $cmarks = $target_info->{$k}->{marks}; # make a copy
>  		    $res->{$k} = $target_info->{$k};
> -		    push @{$res->{$k}->{marks}}, @$cmarks if $cmarks;
>  		}
>  	    }
>  	}





More information about the pmg-devel mailing list