From 1d4c9e80472a19250126941287b7f65f54c5fe77 Mon Sep 17 00:00:00 2001 From: Jeff Fearn Date: Oct 15 2008 03:29:05 +0000 Subject: Fix BX 461557 --- diff --git a/XML-TreeBuilder-NoExpand.patch b/XML-TreeBuilder-NoExpand.patch index d54d715..8481913 100644 --- a/XML-TreeBuilder-NoExpand.patch +++ b/XML-TreeBuilder-NoExpand.patch @@ -1,6 +1,6 @@ -diff --exclude=.svn -ur XML-TreeBuilder-3.09/Changes perl-XML-TreeBuilder/Changes +diff -rubB --exclude=.svn XML-TreeBuilder-3.09/Changes XML-TreeBuilder-patched/Changes --- XML-TreeBuilder-3.09/Changes 2004-06-11 14:28:41.000000000 +1000 -+++ perl-XML-TreeBuilder/Changes 2008-01-18 14:28:37.000000000 +1000 ++++ XML-TreeBuilder-patched/Changes 2008-10-15 12:17:13.000000000 +1000 @@ -1,5 +1,11 @@ # Time-stamp: "2004-06-10 20:28:41 ADT" @@ -13,9 +13,9 @@ diff --exclude=.svn -ur XML-TreeBuilder-3.09/Changes perl-XML-TreeBuilder/Change 2004-06-10 Sean M. Burke -diff --exclude=.svn -ur XML-TreeBuilder-3.09/lib/XML/TreeBuilder.pm perl-XML-TreeBuilder/lib/XML/TreeBuilder.pm +diff -rubB --exclude=.svn XML-TreeBuilder-3.09/lib/XML/TreeBuilder.pm XML-TreeBuilder-patched/lib/XML/TreeBuilder.pm --- XML-TreeBuilder-3.09/lib/XML/TreeBuilder.pm 2004-06-11 13:59:14.000000000 +1000 -+++ perl-XML-TreeBuilder/lib/XML/TreeBuilder.pm 2008-01-18 16:09:10.000000000 +1000 ++++ XML-TreeBuilder-patched/lib/XML/TreeBuilder.pm 2008-10-15 12:38:59.000000000 +1000 @@ -5,6 +5,7 @@ use strict; use XML::Element (); @@ -24,7 +24,7 @@ diff --exclude=.svn -ur XML-TreeBuilder-3.09/lib/XML/TreeBuilder.pm perl-XML-Tre use vars qw(@ISA $VERSION); $VERSION = '3.09'; -@@ -12,20 +13,33 @@ +@@ -12,8 +13,15 @@ #========================================================================== sub new { @@ -34,6 +34,7 @@ diff --exclude=.svn -ur XML-TreeBuilder-3.09/lib/XML/TreeBuilder.pm perl-XML-Tre + my $class = ref($this) || $this; + + my $NoExpand = defined $arg->{'NoExpand'} ? delete $arg->{'NoExpand'} : 0; ++ my $ErrorContext = defined $arg->{'ErrorContext'} ? delete $arg->{'ErrorContext'} : 0; + + if ( %{$arg} ) { + croak "unknown args: " . join( ", ", keys %{$arg} ); @@ -41,12 +42,12 @@ diff --exclude=.svn -ur XML-TreeBuilder-3.09/lib/XML/TreeBuilder.pm perl-XML-Tre my $self = XML::Element->new('NIL'); bless $self, $class; # and rebless -- $self->{'_element_class'} = 'XML::Element'; -+ $self->{'_element_class'} = 'XML::Element'; +@@ -21,11 +29,19 @@ $self->{'_store_comments'} = 0; $self->{'_store_pis'} = 0; $self->{'_store_declarations'} = 0; + $self->{'NoExpand'} = $NoExpand; ++ $self->{'ErrorContext'} = $ErrorContext; my @stack; # Compare the simplicity of this to the sheer nastiness of HTML::TreeBuilder! @@ -61,29 +62,43 @@ diff --exclude=.svn -ur XML-TreeBuilder-3.09/lib/XML/TreeBuilder.pm perl-XML-Tre 'Start' => sub { shift; if(@stack) { -@@ -103,7 +117,8 @@ +@@ -103,7 +119,22 @@ return; }, - }); ++ 'Entity' => sub { ++ return unless $self->{'_store_declarations'}; ++ shift; ++ ( ++ @stack ? $stack[-1] : $self ++ )->push_content( ++ $self->{'_element_class'}->new('~declaration', ++ 'text' => join ' ', 'ENTITY', @_ ++ ) ++ ); ++ return; ++ }, + }, -+ 'NoExpand' => $self->{'NoExpand'}); ++ 'NoExpand' => $self->{'NoExpand'}, ++ 'ErrorContext' => $self->{'ErrorContext'} ++ ); return $self; } -diff --exclude=.svn -ur XML-TreeBuilder-3.09/t/10main.t perl-XML-TreeBuilder/t/10main.t +Only in XML-TreeBuilder-patched/lib/XML: .TreeBuilder.pm.swp +diff -rubB --exclude=.svn XML-TreeBuilder-3.09/t/10main.t XML-TreeBuilder-patched/t/10main.t --- XML-TreeBuilder-3.09/t/10main.t 2004-06-11 14:22:53.000000000 +1000 -+++ perl-XML-TreeBuilder/t/10main.t 2008-01-17 13:24:55.000000000 +1000 -@@ -20,7 +20,7 @@ - ); ++++ XML-TreeBuilder-patched/t/10main.t 2008-10-15 12:17:13.000000000 +1000 +@@ -21,6 +21,7 @@ my $y = XML::Element->new_from_lol( -- ['Gee', -+ ['Gee', { 'NoExpand' => '0'}, + ['Gee', ++ { 'NoExpand' => '0', 'ErrorContext' => '0'}, ['~comment', {'text' => ' myorp '}], ['foo', {'Id'=> 'me', 'xml:foo' => 'lal'}, 'Hello World'], ['lor'], -@@ -29,8 +29,7 @@ +@@ -29,8 +30,7 @@ ] ); diff --git a/perl-XML-TreeBuilder.spec b/perl-XML-TreeBuilder.spec index 8a7322d..e80ecc2 100644 --- a/perl-XML-TreeBuilder.spec +++ b/perl-XML-TreeBuilder.spec @@ -1,7 +1,7 @@ Summary: Parser that builds a tree of XML::Element objects Name: perl-XML-TreeBuilder Version: 3.09 -Release: 9%{?dist} +Release: 11%{?dist} License: GPL+ or Artistic Group: Development/Libraries URL: http://search.cpan.org/dist/XML-TreeBuilder/ @@ -50,6 +50,13 @@ find $RPM_BUILD_ROOT -name .packlist -exec %{__rm} {} \; %{perl_vendorlib}/XML/ %changelog +* Wed Oct 15 2008 Jeff Fearn - 3.09-11 +- Add ErrorContext pass through +- Fix crash on Entity declaration. BZ #461557 + +* Thu May 29 2008 Jeff Fearn - 3.09-10 +- Rebuild for docs + * Fri Jan 18 2008 Jeff Fearn - 3.09-9 - Missed one 3.10