From: Alex Rousskov Date: Thu, 22 Sep 2011 15:23:11 +0000 (-0600) Subject: Bug 3351: FTP timeout causing "store_status == STORE_PENDING" assertion X-Git-Tag: BumpSslServerFirst.take01~138 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=4b4686c911f1917b70cf2d0d37f75a04296181ce;p=thirdparty%2Fsquid.git Bug 3351: FTP timeout causing "store_status == STORE_PENDING" assertion If the entry was aborted while we were timing out, do not attempt to write the timeout error message to it. TODO: Other FTP code should call abortOnBadEntry() instead of testing for ENTRY_ABORTED and calling abortTransaction(). --- diff --git a/src/ftp.cc b/src/ftp.cc index 17eac333c2..e474b0fbbf 100644 --- a/src/ftp.cc +++ b/src/ftp.cc @@ -669,6 +669,9 @@ FtpStateData::ftpTimeout(const CommTimeoutCbParams &io) { debugs(9, 4, HERE << io.conn << ": '" << entry->url() << "'" ); + if (abortOnBadEntry("entry went bad while waiting for a timeout")) + return; + if (SENT_PASV == state && io.conn->fd == data.conn->fd) { /* stupid ftp.netscape.com */ flags.pasv_supported = false;