projects
/
irspy-moved-to-github.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
explicitly set the maximum number of nested template calls and variables/params to 250
[irspy-moved-to-github.git]
/
lib
/
ZOOM
/
IRSpy.pm
diff --git
a/lib/ZOOM/IRSpy.pm
b/lib/ZOOM/IRSpy.pm
index
8e6d3ac
..
243c153
100644
(file)
--- 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;
package ZOOM::IRSpy;
@@
-77,6
+77,9
@@
sub new {
my $xslt = new XML::LibXSLT;
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);
$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} };
my $i = $this->{modi};
if (!defined $n) {
$target = shift @{ $this->{queue} };
+ return undef if !defined $target;
} else {
while (1) {
$target = shift @{ $this->{queue} };
} 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;
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});
}
return create ZOOM::IRSpy::Connection($this, $target, async => 1,
timeout => $this->{timeout});
}