aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIngela Anderton Andin <[email protected]>2011-08-18 10:19:34 +0200
committerIngela Anderton Andin <[email protected]>2012-02-13 10:41:54 +0100
commitdc03388dd171db15ba72be2b3d24276c4e2e98b8 (patch)
tree976eac3af7c377a85fc53cb8c616fecb84a12bf4
parent86231a380b27fc262e48aa8c3f0372d4d2056682 (diff)
downloadotp-dc03388dd171db15ba72be2b3d24276c4e2e98b8.tar.gz
otp-dc03388dd171db15ba72be2b3d24276c4e2e98b8.tar.bz2
otp-dc03388dd171db15ba72be2b3d24276c4e2e98b8.zip
Avoid to crash if the remote side closes the connection prematurely
-rw-r--r--lib/ssh/src/ssh_connection_manager.erl6
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/ssh/src/ssh_connection_manager.erl b/lib/ssh/src/ssh_connection_manager.erl
index 9bfd5270da..f729276e65 100644
--- a/lib/ssh/src/ssh_connection_manager.erl
+++ b/lib/ssh/src/ssh_connection_manager.erl
@@ -1,7 +1,7 @@
%%
%% %CopyrightBegin%
%%
-%% Copyright Ericsson AB 2008-2010. All Rights Reserved.
+%% Copyright Ericsson AB 2008-2011. All Rights Reserved.
%%
%% The contents of this file are subject to the Erlang Public License,
%% Version 1.1, (the "License"); you may not use this file except in
@@ -144,7 +144,7 @@ adjust_window(ConnectionManager, Channel, Bytes) ->
cast(ConnectionManager, {adjust_window, Channel, Bytes}).
close(ConnectionManager, ChannelId) ->
- try call(ConnectionManager, {close, ChannelId}) of
+ try call(ConnectionManager, {close, ChannelId}) of
ok ->
ok;
{error, channel_closed} ->
@@ -604,6 +604,8 @@ call(Pid, Msg, Timeout) ->
exit:{timeout, _} ->
{error, timeout};
exit:{normal, _} ->
+ {error, channel_closed};
+ exit:{noproc,_} ->
{error, channel_closed}
end.