fixed a missing get_all_user_calls

This commit is contained in:
djk 1999-11-21 16:38:19 +00:00
parent e6a53556f1
commit b0dc102f62
3 changed files with 13 additions and 17 deletions

View File

@ -346,8 +346,9 @@ sub disconnect
my $user = $self->{user}; my $user = $self->{user};
my $conn = $self->{conn}; my $conn = $self->{conn};
my $call = $self->{call}; my $call = $self->{call};
my $nopc39 = shift || 0;
$self->finish(); $self->finish($nopc39);
$conn->send_now("Z$call|bye") if $conn; # this will cause 'client' to disconnect $conn->send_now("Z$call|bye") if $conn; # this will cause 'client' to disconnect
$user->close() if defined $user; $user->close() if defined $user;
$conn->disconnect() if $conn; $conn->disconnect() if $conn;

View File

@ -190,7 +190,7 @@ sub normal
# is it for me or one of mine? # is it for me or one of mine?
my $call = ($field[5] gt ' ') ? $field[5] : $field[2]; my $call = ($field[5] gt ' ') ? $field[5] : $field[2];
if ($call eq $main::mycall || grep $_ eq $call, get_all_user_calls()) { if ($call eq $main::mycall || grep $_ eq $call, DXChannel::get_all_user_calls()) {
# yes, it is # yes, it is
my $text = unpad($field[3]); my $text = unpad($field[3]);
@ -818,9 +818,10 @@ sub finish
{ {
my $self = shift; my $self = shift;
my $call = $self->call; my $call = $self->call;
my $nopc39 = shift;
my $ref = DXCluster->get_exact($call); my $ref = DXCluster->get_exact($call);
$self->send_now("D", DXProt::pc39($main::mycall, $self->msg('disc1', "System Op"))); $self->send_now("D", DXProt::pc39($main::mycall, $self->msg('disc1', "System Op"))) unless $nopc39;
# unbusy and stop and outgoing mail # unbusy and stop and outgoing mail
my $mref = DXMsg::get_busy($call); my $mref = DXMsg::get_busy($call);

View File

@ -94,7 +94,7 @@ sub already_conn
dbg('chan', "-> Z $call bye\n"); dbg('chan', "-> Z $call bye\n");
$conn->send_now("Z$call|bye"); # this will cause 'client' to disconnect $conn->send_now("Z$call|bye"); # this will cause 'client' to disconnect
sleep(1); sleep(1);
$conn->disconnect; $conn->disconnect();
} }
# handle incoming messages # handle incoming messages
@ -105,7 +105,7 @@ sub rec
if (defined $err && $err) { if (defined $err && $err) {
if ($dxchan) { if ($dxchan) {
disconnect($dxchan); $dxchan->disconnect;
} }
return; return;
} }
@ -184,18 +184,6 @@ sub cease
}; };
dbg('local', "Local::finish error $@") if $@; dbg('local', "Local::finish error $@") if $@;
# disconnect users
foreach $dxchan (DXChannel->get_all()) {
next if $dxchan->is_ak1a;
disconnect($dxchan) unless $dxchan == $DXProt::me;
}
Msg->event_loop(1, 0.05);
Msg->event_loop(1, 0.05);
Msg->event_loop(1, 0.05);
Msg->event_loop(1, 0.05);
Msg->event_loop(1, 0.05);
Msg->event_loop(1, 0.05);
# disconnect nodes # disconnect nodes
foreach $dxchan (DXChannel->get_all()) { foreach $dxchan (DXChannel->get_all()) {
next unless $dxchan->is_ak1a; next unless $dxchan->is_ak1a;
@ -207,6 +195,12 @@ sub cease
Msg->event_loop(1, 0.05); Msg->event_loop(1, 0.05);
Msg->event_loop(1, 0.05); Msg->event_loop(1, 0.05);
Msg->event_loop(1, 0.05); Msg->event_loop(1, 0.05);
# disconnect users
foreach $dxchan (DXChannel->get_all()) {
next if $dxchan->is_ak1a;
disconnect($dxchan) unless $dxchan == $DXProt::me;
}
Msg->event_loop(1, 0.05); Msg->event_loop(1, 0.05);
Msg->event_loop(1, 0.05); Msg->event_loop(1, 0.05);
Msg->event_loop(1, 0.05); Msg->event_loop(1, 0.05);