From d2bdd7b1cfb05181b4dd8fcce83ad4fa77e75a0f Mon Sep 17 00:00:00 2001 From: "valeski%netscape.com" Date: Tue, 25 Jan 2000 02:29:42 +0000 Subject: [PATCH] 20445. r=warren. We now propagate connection_refused errors from the socket transport. git-svn-id: svn://10.0.0.236/trunk@58507 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/netwerk/base/src/nsSocketTransport.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/mozilla/netwerk/base/src/nsSocketTransport.cpp b/mozilla/netwerk/base/src/nsSocketTransport.cpp index 535ecc45118..1fd60777f0d 100644 --- a/mozilla/netwerk/base/src/nsSocketTransport.cpp +++ b/mozilla/netwerk/base/src/nsSocketTransport.cpp @@ -345,7 +345,10 @@ nsresult nsSocketTransport::Process(PRInt16 aSelectFlags) ("Operation failed via PR_POLL_EXCEPT. [%s:%d %x].\n", mHostName, mPort, this)); // An error has occurred, so cancel the read and/or write operation... - mStatus = NS_BINDING_FAILED; + if (mCurrentState == eSocketState_WaitConnect) + mStatus = NS_ERROR_CONNECTION_REFUSED; + else + mStatus = NS_BINDING_FAILED; } if (PR_POLL_HUP & aSelectFlags) { @@ -484,6 +487,9 @@ nsresult nsSocketTransport::Process(PRInt16 aSelectFlags) mWritePipeOut = null_nsCOMPtr(); SetWriteType(eSocketWrite_None); ClearFlag(eSocketWrite_Done); + + if (mCloseConnectionOnceDone) + CloseConnection(); } //