projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
added console.pl
[spider.git]
/
perl
/
DXProt.pm
diff --git
a/perl/DXProt.pm
b/perl/DXProt.pm
index 9519c004dee7f6f924ebcb6345fed3fb66ef368d..d9e59c4937bc9211cc8425a804760879dfba6aa6 100644
(file)
--- a/
perl/DXProt.pm
+++ b/
perl/DXProt.pm
@@
-319,7
+319,8
@@
sub normal
dbg('chan', "LOOP: $field[1] came in on wrong channel");
return;
}
dbg('chan', "LOOP: $field[1] came in on wrong channel");
return;
}
- if (DXChannel->get($field[1])) {
+ my $dxchan;
+ if (($dxchan = DXChannel->get($field[1])) && $dxchan != $self) {
dbg('chan', "LOOP: $field[1] connected locally");
return;
}
dbg('chan', "LOOP: $field[1] connected locally");
return;
}
@@
-359,7
+360,8
@@
sub normal
dbg('chan', "LOOP: $field[2] came in on wrong channel");
return;
}
dbg('chan', "LOOP: $field[2] came in on wrong channel");
return;
}
- if (DXChannel->get($field[2])) {
+ my $dxchan;
+ if (($dxchan = DXChannel->get($field[2])) && $dxchan != $self) {
dbg('chan', "LOOP: $field[2] connected locally");
return;
}
dbg('chan', "LOOP: $field[2] connected locally");
return;
}
@@
-387,7
+389,8
@@
sub normal
# now check the call over
my $node = DXCluster->get_exact($call);
if ($node) {
# now check the call over
my $node = DXCluster->get_exact($call);
if ($node) {
- if (DXChannel->get($call)) {
+ my $dxchan;
+ if (($dxchan = DXChannel->get($call)) && $dxchan != $self) {
dbg('chan', "LOOP: $call connected locally");
}
if ($node->dxchan != $self) {
dbg('chan', "LOOP: $call connected locally");
}
if ($node->dxchan != $self) {
@@
-454,7
+457,8
@@
sub normal
dbg('chan', "LOOP: $call come in on wrong channel");
return;
}
dbg('chan', "LOOP: $call come in on wrong channel");
return;
}
- if (DXChannel->get($call)) {
+ my $dxchan;
+ if (($dxchan = DXChannel->get($call)) && $dxchan != $self) {
dbg('chan', "LOOP: $call connected locally");
return;
}
dbg('chan', "LOOP: $call connected locally");
return;
}