I don't get it. There were two calls to get_port() right next to

each other, in the very same ? :, and one of them had a ->[0]
tacked on the end and the other one didn't.  Well guess what...
the one without was returning an arrayref, which caused these
failures in the unit tests:
Can't call method "get_binding" on unblessed reference at /home/scott/projects/SOAP-WSDL/blib/lib/SOAP/WSDL.pm line 186.
This commit is contained in:
Scott Walters
2014-08-21 07:27:58 -04:00
parent 50c8d5b31f
commit f2ce9511e0

View File

@@ -174,7 +174,7 @@ sub _wsdl_get_port :PRIVATE {
my $wsdl = $definitions_of{ $ident };
my $ns = $wsdl->get_targetNamespace();
return $port_of{ $ident } = $portname_of{ $ident }
? $service_of{ $ident }->get_port( $ns, $portname_of{ $ident } )
? $service_of{ $ident }->get_port( $ns, $portname_of{ $ident } )->[ 0 ]
: ( $port_of{ $ident } = $service_of{ $ident }->get_port()->[ 0 ] );
}