From: Simon Elliott Date: Sat, 4 Jun 2011 15:25:02 +0000 (+0100) Subject: improvement X-Git-Tag: allocate~1 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FHTML-Zoom.git;a=commitdiff_plain;h=5c4c9836ca949e555a592fd2098b7107a6a35724 improvement --- diff --git a/lib/HTML/Zoom/FilterBuilder.pm b/lib/HTML/Zoom/FilterBuilder.pm index 5135e32..e2a2693 100644 --- a/lib/HTML/Zoom/FilterBuilder.pm +++ b/lib/HTML/Zoom/FilterBuilder.pm @@ -83,15 +83,14 @@ sub remove_from_attribute { my $self = shift; my $attr = $self->_parse_attribute_args(@_); sub { - my $a = (my $evt = $_[0])->{attrs}; - my @kupd = grep {exists $a->{$_}} keys %$attr; +{ %$evt, raw => undef, raw_attrs => undef, attrs => { %$a, #TODO needs to support multiple removes map { my $tar = $_; $_ => join ' ', - map {$attr->{$tar} ne $_} split ' ', $a->{$_} } @kupd + map {$attr->{$tar} ne $_} split ' ', $a->{$_} } + grep {exists $a->{$_}} keys %$attr }, } };