} else {
next;
}
+ } else {
+ if ($r->version != $ver || $r->flags != $flags) {
+ $r->version($ver);
+ $r->flags($flags);
+ push @rout, $r;
+ }
}
} else {
# send a ping out on this channel
if ($dxchan->{pingint} && $t >= $dxchan->{pingint} + $dxchan->{lastping}) {
- if ($dxchan->{nopings} <= 0) {
- $dxchan->disconnect;
- } else {
+# if ($dxchan->{nopings} <= 0) {
+# $dxchan->disconnect;
+# } else {
addping($main::mycall, $dxchan->call);
$dxchan->{nopings} -= 1;
$dxchan->{lastping} = $t;
- }
+# }
}
}
# it's a reply, look in the ping list for this one
my $ref = $ping{$thing->{id}} if exists $thing->{id};
- $ref ||= find(($thing->{user}||$thing->{origin}), ($thing->{touser}||$thing->{group}));
+ $ref = find(($thing->{user}||$thing->{origin}), ($thing->{touser}||$thing->{group})) unless $ref;
if ($ref) {
my $t = tv_interval($ref->{t}, [ gettimeofday ]);
my $tochan = DXChannel::get($ref->{touser} || $ref->{group});