projects
/
spider.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
7b616ae
)
fix problem with things banging out and leaving stuff in the input queue
author
minima
<minima>
Fri, 17 Jan 2003 16:18:09 +0000
(16:18 +0000)
committer
minima
<minima>
Fri, 17 Jan 2003 16:18:09 +0000
(16:18 +0000)
perl/DXChannel.pm
patch
|
blob
|
history
perl/cluster.pl
patch
|
blob
|
history
diff --git
a/perl/DXChannel.pm
b/perl/DXChannel.pm
index 9ef0cec243671b78dafffd5ab306cb7c33cc3d4c..3b3ac62f13b84e193c0ff661981d3ba3a7981616 100644
(file)
--- a/
perl/DXChannel.pm
+++ b/
perl/DXChannel.pm
@@
-426,6
+426,7
@@
sub disconnect
my $self = shift;
my $user = $self->{user};
+ main::clean_inqueue($self); # clear out any remaining incoming frames
$user->close() if defined $user;
$self->{conn}->disconnect;
$self->del();
diff --git
a/perl/cluster.pl
b/perl/cluster.pl
index 655a986b1af35dfd881795a3a3ffb320a867dc82..58742e1952bd78b3e8618c8d51451c8c083a7f3f 100755
(executable)
--- a/
perl/cluster.pl
+++ b/
perl/cluster.pl
@@
-240,6
+240,13
@@
sub rec
}
}
+# remove any outstanding entries on the inqueue after a disconnection (usually)
+sub clean_inqueue
+{
+ my $dxchan = shift;
+ @inqueue = grep {$_ != $dxchan} @inqueue;
+}
+
sub login
{
return \&new_channel;