From: sgunderson@bigfoot.com <> Date: Thu, 1 Mar 2007 11:49:46 +0000 (+0100) Subject: Fix up the SAX cleaner. Passes cloning test! X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=3e5cc56a9748cb84342e54ce89e02582bb6a5ec8;p=xml-template Fix up the SAX cleaner. Passes cloning test! --- diff --git a/perl-sax/XML/TemplateSAX/Cleaner.pm b/perl-sax/XML/TemplateSAX/Cleaner.pm index 52b7fe3..e5f784a 100644 --- a/perl-sax/XML/TemplateSAX/Cleaner.pm +++ b/perl-sax/XML/TemplateSAX/Cleaner.pm @@ -8,7 +8,8 @@ use base qw(XML::SAX::Base); sub start_element { my ($self, $data) = @_; my $attrs = $data->{'Attributes'}; - + + return if ($data->{'NamespaceURI'} eq 'http://template.sesse.net/'); for my $a (keys %$attrs) { if ($attrs->{$a}->{'NamespaceURI'} eq 'http://template.sesse.net/') { delete $attrs->{$a}; @@ -17,5 +18,13 @@ sub start_element { $self->SUPER::start_element($data); } + +sub end_element { + my ($self, $data) = @_; + + return if ($data->{'NamespaceURI'} eq 'http://template.sesse.net/'); + + $self->SUPER::end_element($data); +} 1;