From 5c9cdc459e39c935701616c236bb7ad5061c41ee Mon Sep 17 00:00:00 2001 From: "phajdan.jr@chromium.org" Date: Wed, 24 Jun 2009 21:34:10 +0000 Subject: Prevent infinite loop in new FtpNetworkTransaction. It tried to send a QUIT command when sending QUIT command failed. BUG=none TEST=none Review URL: http://codereview.chromium.org/146103 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19177 0039d316-1c4b-4281-b951-d872f2087c98 --- net/ftp/ftp_network_transaction.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'net') diff --git a/net/ftp/ftp_network_transaction.cc b/net/ftp/ftp_network_transaction.cc index 87c3e16..6d2381d 100644 --- a/net/ftp/ftp_network_transaction.cc +++ b/net/ftp/ftp_network_transaction.cc @@ -63,9 +63,12 @@ int FtpNetworkTransaction::Start(const FtpRequestInfo* request_info, } int FtpNetworkTransaction::Stop(int error) { + if (command_sent_ == COMMAND_QUIT) + return ERR_FAILED; + next_state_ = STATE_CTRL_WRITE_QUIT; last_error_ = error; - return OK; + return error; } int FtpNetworkTransaction::RestartWithAuth(const std::wstring& username, -- cgit v1.1