From 362f72d428454360344da2bc87377d6cbd5f85aa Mon Sep 17 00:00:00 2001 From: minima Date: Fri, 2 Mar 2001 22:17:51 +0000 Subject: [PATCH] more bugs --- perl/ExtMsg.pm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/perl/ExtMsg.pm b/perl/ExtMsg.pm index f2d13264..60566f7a 100644 --- a/perl/ExtMsg.pm +++ b/perl/ExtMsg.pm @@ -76,7 +76,7 @@ sub dequeue } elsif ($conn->{state} eq 'WC') { if (exists $conn->{cmd} && @{$conn->{cmd}}) { $conn->_docmd($msg); - unless (exists $conn->{cmd} && @{$conn->{cmd}}) { + unless ($conn->{state} eq 'WC' && @{$conn->{cmd}}) { $conn->{state} = 'C'; &{$conn->{rproc}}($conn, "O$conn->{call}|telnet"); delete $conn->{cmd}; @@ -87,7 +87,7 @@ sub dequeue } if ($conn->{msg} && $conn->{state} eq 'WC' && exists $conn->{cmd} && @{$conn->{cmd}}) { $conn->_docmd($conn->{msg}); - unless (@{$conn->{cmd}}) { + unless ($conn->{state} eq 'WC' && @{$conn->{cmd}}) { $conn->{state} = 'C'; &{$conn->{rproc}}($conn, "O$conn->{call}|telnet"); delete $conn->{cmd}; @@ -234,6 +234,7 @@ sub _dochat if ($conn->{abort} && $line =~ /$conn->{abort}/i) { dbg('connect', "aborted on /$conn->{abort}/"); $conn->disconnect; + delete $conn->{cmd}; return; } if ($line =~ /$expect/i) { -- 2.43.0