diff options
Diffstat (limited to 'lib/Net/Cmd.pm')
-rw-r--r-- | lib/Net/Cmd.pm | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/Net/Cmd.pm b/lib/Net/Cmd.pm index fe4492b..2242600 100644 --- a/lib/Net/Cmd.pm +++ b/lib/Net/Cmd.pm @@ -263,7 +263,7 @@ sub _set_status_closed { sub _is_closed { my $cmd = shift; if (!defined fileno($cmd)) { - $cmd->_set_status_closed; + $cmd->_set_status_closed($!); return 1; } return 0; @@ -346,8 +346,9 @@ sub getline { my $select_ret = select($rout = $rin, undef, undef, $timeout); if ($select_ret > 0) { unless (sysread($cmd, $buf = "", 1024)) { + my $err = $!; $cmd->close; - $cmd->_set_status_closed; + $cmd->_set_status_closed($err); return; } |