summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Nilsson <hans@erlang.org>2019-09-11 11:28:28 +0200
committerHans Nilsson <hans@erlang.org>2019-09-11 11:28:28 +0200
commit61764a2c20e8f981ae5797cc167f0eb6a4780080 (patch)
tree54f9d37e6a941258497c074417b35aa3b2e3199f
parentbd97751de0a5ed3aa0525aa24ea713d31c7d19fa (diff)
parentb76f435aa67a226e6f87802dcde319c049629797 (diff)
downloaderlang-61764a2c20e8f981ae5797cc167f0eb6a4780080.tar.gz
Merge branch 'hans/ftp/break_infinit_loop/OTP-16056' into maint
* hans/ftp/break_infinit_loop/OTP-16056: ftp: Break loop
-rw-r--r--lib/ftp/src/ftp.erl7
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/ftp/src/ftp.erl b/lib/ftp/src/ftp.erl
index 18cd8c7524..e9be7b8ff7 100644
--- a/lib/ftp/src/ftp.erl
+++ b/lib/ftp/src/ftp.erl
@@ -1399,10 +1399,13 @@ handle_info({Transport, Socket, Data}, #state{csock = {Transport, Socket},
ctrl_data =
{NextMsgData, [], start}})
end;
- {continue, NewCtrlData} ->
+ {continue, NewCtrlData} when NewCtrlData =/= CtrlData ->
?DBG(' ...Continue... ctrl_data=~p~n',[NewCtrlData]),
State = activate_ctrl_connection(State0),
- {noreply, State#state{ctrl_data = NewCtrlData}}
+ {noreply, State#state{ctrl_data = NewCtrlData}};
+ {continue, NewCtrlData} when NewCtrlData == CtrlData ->
+ ?DBG(' ...Continue... ctrl_data=~p~n',[NewCtrlData]),
+ {noreply, State0}
end;
%% If the server closes the control channel it is