X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=lib%2FLaTeX%2FTikZ%2FFunctor.pm;h=d4ba0740b96d5abd917a18a6007bc6fc06911167;hb=ccef95119764f56b5f77bd85c5199f5d375ca08e;hp=efa66a095283d48de76a5c120eded45e40946d40;hpb=a44105abc490869376ff448faa654f429324abe2;p=perl%2Fmodules%2FLaTeX-TikZ.git diff --git a/lib/LaTeX/TikZ/Functor.pm b/lib/LaTeX/TikZ/Functor.pm index efa66a0..d4ba074 100644 --- a/lib/LaTeX/TikZ/Functor.pm +++ b/lib/LaTeX/TikZ/Functor.pm @@ -144,9 +144,10 @@ sub new { } } } - my $new_set = $rule ? $rule->handler->($self, $set, @_) - : $set; - my $is_new = $new_set ne $set; + return $set unless $rule; + + my $new_set = $rule->handler->($self, $set, @_); + return $set if $new_set == $set; my @new_mods; MOD: @@ -163,8 +164,7 @@ MOD: push @new_mods, $rule ? $rule->handler->($self, $mod, @_) : $mod; } - - $new_set->mod(@new_mods) if $is_new; + $new_set->mod(@new_mods); return $new_set; }, $class;