X-Git-Url: http://git.indexdata.com/?p=irspy-moved-to-github.git;a=blobdiff_plain;f=lib%2FZOOM%2FIRSpy.pm;h=243c153ad00c1c527965e546f98b0c51a7efc578;hp=8e6d3acdb6b56b75d3a2fde7747556e091341302;hb=9286e13ef0adb5c2834baf0d9606822728e7d8c5;hpb=a872bfd36956697679ac33140503268b57d7aa07 diff --git a/lib/ZOOM/IRSpy.pm b/lib/ZOOM/IRSpy.pm index 8e6d3ac..243c153 100644 --- a/lib/ZOOM/IRSpy.pm +++ b/lib/ZOOM/IRSpy.pm @@ -1,4 +1,4 @@ -# $Id: IRSpy.pm,v 1.88 2007-09-18 16:57:37 mike Exp $ +# $Id: IRSpy.pm,v 1.90 2008-07-16 11:42:13 mike Exp $ package ZOOM::IRSpy; @@ -77,6 +77,9 @@ sub new { my $xslt = new XML::LibXSLT; + # raise the maximum number of nested template calls and variables/params (default 250) + $xslt->max_depth(250); + $xslt->register_function($ZOOM::IRSpy::Utils::IRSPY_NS, 'strcmp', \&ZOOM::IRSpy::Utils::xslt_strcmp); @@ -230,6 +233,7 @@ sub _next_connection { my $i = $this->{modi}; if (!defined $n) { $target = shift @{ $this->{queue} }; + return undef if !defined $target; } else { while (1) { $target = shift @{ $this->{queue} }; @@ -237,10 +241,11 @@ sub _next_connection { my $h = _hash($target); my $hmodn = $h % $n; last if $hmodn == $i; - $this->log("irspy", "'$target' hash $h % $n = $hmodn != $i"); + #$this->log("irspy", "'$target' hash $h % $n = $hmodn != $i"); } } + die "oops -- target is undefined" if !defined $target; return create ZOOM::IRSpy::Connection($this, $target, async => 1, timeout => $this->{timeout}); }