[libsoap-wsdl-perl] 08/12: Drop prefix_from_namespace.patch, issue fixed upstream
Damyan Ivanov
dmn at moszumanska.debian.org
Fri Jun 12 12:41:07 UTC 2015
This is an automated email from the git hooks/post-receive script.
dmn pushed a commit to branch master
in repository libsoap-wsdl-perl.
commit d8182d45c69f9524294ee7eeb504ad4baaea95a4
Author: Damyan Ivanov <dmn at debian.org>
Date: Fri Jun 12 12:30:25 2015 +0000
Drop prefix_from_namespace.patch, issue fixed upstream
---
debian/patches/prefix_from_namespace.patch | 86 ------------------------------
debian/patches/series | 1 -
2 files changed, 87 deletions(-)
diff --git a/debian/patches/prefix_from_namespace.patch b/debian/patches/prefix_from_namespace.patch
deleted file mode 100644
index 972d203..0000000
--- a/debian/patches/prefix_from_namespace.patch
+++ /dev/null
@@ -1,86 +0,0 @@
-Description: fix reversal of namespace hashes to get a prefix hash
-Author: Damyan Ivanov <dmn at debian.org>
-Bug: https://rt.cpan.org/Ticket/Display.html?id=74257
-Bug-Debian: http://bugs.debian.org/720964
-
---- a/lib/SOAP/WSDL/Base.pm
-+++ b/lib/SOAP/WSDL/Base.pm
-@@ -174,6 +174,38 @@ sub schema {
- return $parent->schema();
- }
-
-+# this is used when we have a namespaces hash, but need to find the prefix to
-+# some namespace
-+# using %prefix = reverse %namespace; can break, as %namespace may contain
-+# duplicate values, due to the '#default' key:
-+#
-+# '#default' => 'urn:myNamespace',
-+# 'tns' => 'urn:myNamespace',
-+# 'xml' => 'http://www.w3.org/XML/1998/namespace',
-+# 'wsdl' => 'http://schemas.xmlsoap.org/wsdl/',
-+# 'xsd' => 'http://www.w3.org/2001/XMLSchema',
-+# 'soap' => 'http://schemas.xmlsoap.org/wsdl/soap/'
-+#
-+# 'reverse'-ing that with Perl 5.18 gives 'urn:myNamespace' => '#default' or
-+# 'urn:myNamespace' => 'tns' with 50% probability due to the hash randomization
-+# feature.
-+# Using reverse causes t/003_wsdl_based_serializer.t to fail most of the time
-+# because the prefix for 'urn:myNamespace' is sometimes '#default' (wrong),
-+# sometimes 'tns' (right)
-+
-+sub prefix_from_namespace {
-+ my ( $self, $ns ) = @_;
-+
-+ my %prefix;
-+
-+ while ( my ( $prefix, $ns ) = each %$ns ) {
-+ $prefix{$ns} = $prefix
-+ unless $prefix eq '#default' and exists $prefix{$ns};
-+ }
-+
-+ return \%prefix;
-+}
-+
- 1;
-
- __END__
---- a/lib/SOAP/WSDL/XSD/Builtin.pm
-+++ b/lib/SOAP/WSDL/XSD/Builtin.pm
-@@ -19,8 +19,8 @@ sub serialize {
- $xml .= '<' . join ' ', $name, @{ $opt->{ attributes } };
- if ( $opt->{ autotype }) {
- my $ns = $self->get_targetNamespace();
-- my %prefix_of = reverse %{ $opt->{ namespace } };
-- my $prefix = $prefix_of{ $ns }
-+ my $prefix_of = $self->prefix_from_namespace( $opt->{ namespace } );
-+ my $prefix = $prefix_of->{ $ns }
- || die 'No prefix found for namespace '. $ns;
- $xml .= ' type="' . $prefix . ':'
- . $self->get_name() . '"';
---- a/lib/SOAP/WSDL/XSD/ComplexType.pm
-+++ b/lib/SOAP/WSDL/XSD/ComplexType.pm
-@@ -98,8 +98,8 @@ sub serialize {
- if ( $opt->{ autotype }) {
- my $ns = $self->get_targetNamespace();
- # reverse namespace by prefix hash
-- my %prefix_of = reverse %{ $opt->{ namespace } };
-- my $prefix = $prefix_of{ $ns }
-+ my $prefix_of = $self->prefix_from_namespace( $opt->{ namespace } );
-+ my $prefix = $prefix_of->{ $ns }
- || die 'No prefix found for namespace '. $ns;
- $xml .= join q{}, " type=\"$prefix:", $self->get_name(), '" '
- if ($self->get_name() );
---- a/lib/SOAP/WSDL/XSD/SimpleType.pm
-+++ b/lib/SOAP/WSDL/XSD/SimpleType.pm
-@@ -100,9 +100,9 @@ sub _serialize_single {
- $xml .= '<' . join ' ', $name, @{ $opt->{ attributes } };
- if ( $opt->{ autotype }) {
- # reverse namespace by prefix hash
-- my %prefix_of = reverse %{ $opt->{ namespace } };
-+ my $prefix_of = $self->prefix_from_namespace( $opt->{namespace} );
- my $ns = $self->get_targetNamespace();
-- my $prefix = $prefix_of{ $ns }
-+ my $prefix = $prefix_of->{ $ns }
- || die 'No prefix found for namespace '. $ns;
- $xml .= ' type="' . $prefix . ':' . $self->get_name() .'"';
- }
diff --git a/debian/patches/series b/debian/patches/series
index cd27528..890a7d2 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,5 +1,4 @@
pod-whatis.patch
pod-spelling.patch
-prefix_from_namespace.patch
use-Test::XML.patch
fix-HeaderFault-base.patch
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libsoap-wsdl-perl.git
More information about the Pkg-perl-cvs-commits
mailing list