mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-14 13:55:43 +00:00
Fix MAC bustage - quick and dirty.
This commit is contained in:
parent
3c2bcff92a
commit
0713b87afe
@ -97,7 +97,8 @@ nsHTTPChannel::nsHTTPChannel(nsIURI* i_URL, nsHTTPHandler* i_Handler):
|
||||
mBufferSegmentSize(0),
|
||||
mBufferMaxSize(0),
|
||||
mStatus(NS_OK),
|
||||
mPipeliningAllowed (PR_FALSE)
|
||||
mPipeliningAllowed (PR_FALSE),
|
||||
mPipelinedRequest (nsnull)
|
||||
{
|
||||
NS_INIT_REFCNT();
|
||||
|
||||
@ -123,6 +124,7 @@ nsHTTPChannel::~nsHTTPChannel()
|
||||
#endif
|
||||
NS_IF_RELEASE(mResponse);
|
||||
NS_IF_RELEASE(mCachedResponse);
|
||||
NS_IF_RELEASE(mPipelinedRequest);
|
||||
|
||||
mHandler = null_nsCOMPtr();
|
||||
mEventSink = null_nsCOMPtr();
|
||||
@ -1308,11 +1310,11 @@ nsHTTPChannel::Open(void)
|
||||
}
|
||||
} /* WAITING_FOR_OPEN */
|
||||
|
||||
nsCOMPtr<nsHTTPPipelinedRequest> pReq = mPipelinedRequest;
|
||||
nsHTTPPipelinedRequest * pReq = mPipelinedRequest;
|
||||
|
||||
if (!pReq)
|
||||
{
|
||||
mHandler -> GetPipelinedRequest (this, getter_AddRefs (pReq));
|
||||
mHandler -> GetPipelinedRequest (this, &pReq);
|
||||
pReq -> AddToPipeline (mRequest);
|
||||
}
|
||||
|
||||
@ -1326,6 +1328,8 @@ nsHTTPChannel::Open(void)
|
||||
{
|
||||
if (!mPipelinedRequest)
|
||||
mPipelinedRequest = pReq;
|
||||
else
|
||||
NS_RELEASE (pReq);
|
||||
|
||||
rv = pReq -> WriteRequest ();
|
||||
|
||||
@ -1344,6 +1348,7 @@ nsHTTPChannel::Open(void)
|
||||
else
|
||||
{
|
||||
mHandler -> AddPipelinedRequest (pReq);
|
||||
NS_RELEASE (pReq);
|
||||
}
|
||||
|
||||
mState = HS_WAITING_FOR_RESPONSE;
|
||||
|
@ -171,7 +171,7 @@ protected:
|
||||
nsresult mStatus;
|
||||
|
||||
nsCOMPtr<nsIChannel> mCacheTransport;
|
||||
nsCOMPtr<nsHTTPPipelinedRequest> mPipelinedRequest;
|
||||
nsHTTPPipelinedRequest* mPipelinedRequest;
|
||||
|
||||
PRBool mPipeliningAllowed;
|
||||
};
|
||||
|
@ -22,8 +22,8 @@
|
||||
|
||||
#include "nspr.h"
|
||||
#include "nsIURL.h"
|
||||
#include "nsHTTPRequest.h"
|
||||
#include "nsIHTTPProtocolHandler.h"
|
||||
#include "nsHTTPRequest.h"
|
||||
#include "nsHTTPAtoms.h"
|
||||
#include "nsHTTPEnums.h"
|
||||
#include "nsIPipe.h"
|
||||
@ -562,7 +562,7 @@ nsHTTPPipelinedRequest::WriteRequest ()
|
||||
if (mAttempts > 2)
|
||||
return NS_ERROR_FAILURE;
|
||||
|
||||
nsCOMPtr<nsHTTPRequest> req = dont_AddRef ((nsHTTPRequest *) mRequests -> ElementAt (0));
|
||||
nsHTTPRequest * req = (nsHTTPRequest *) mRequests -> ElementAt (0);
|
||||
|
||||
if (!mTransport)
|
||||
{
|
||||
@ -573,6 +573,8 @@ nsHTTPPipelinedRequest::WriteRequest ()
|
||||
if (NS_FAILED (rv))
|
||||
return rv;
|
||||
}
|
||||
|
||||
NS_RELEASE (req);
|
||||
|
||||
if (NS_FAILED (rv))
|
||||
return rv;
|
||||
@ -581,8 +583,9 @@ nsHTTPPipelinedRequest::WriteRequest ()
|
||||
{
|
||||
for (index = 0; index < count; index++)
|
||||
{
|
||||
req = dont_AddRef ((nsHTTPRequest *) mRequests -> ElementAt (index));
|
||||
req = (nsHTTPRequest *) mRequests -> ElementAt (index);
|
||||
req -> formHeaders (mCapabilities);
|
||||
NS_RELEASE (req);
|
||||
}
|
||||
}
|
||||
|
||||
@ -590,10 +593,12 @@ nsHTTPPipelinedRequest::WriteRequest ()
|
||||
|
||||
for (index = 0; index < count; index++)
|
||||
{
|
||||
req = dont_AddRef ((nsHTTPRequest *) mRequests -> ElementAt (index));
|
||||
req = (nsHTTPRequest *) mRequests -> ElementAt (index);
|
||||
req -> formBuffer (&mRequestBuffer);
|
||||
if (index == 0)
|
||||
mTransport -> SetNotificationCallbacks (req -> mConnection);
|
||||
|
||||
NS_RELEASE (req);
|
||||
}
|
||||
|
||||
//
|
||||
@ -624,9 +629,10 @@ nsHTTPPipelinedRequest::WriteRequest ()
|
||||
rv = mTransport->SetTransferCount(mRequestBuffer.Length());
|
||||
|
||||
if (NS_FAILED(rv)) return rv;
|
||||
req = dont_AddRef ((nsHTTPRequest *) mRequests -> ElementAt (0));
|
||||
req = (nsHTTPRequest *) mRequests -> ElementAt (0);
|
||||
|
||||
rv = mTransport->AsyncWrite(stream, this, (nsISupports*)(nsIRequest*)req -> mConnection);
|
||||
NS_RELEASE (req);
|
||||
return rv;
|
||||
}
|
||||
|
||||
@ -650,7 +656,7 @@ nsHTTPPipelinedRequest::OnStopRequest (nsIChannel* channel, nsISupports* i_Conte
|
||||
nsresult rv;
|
||||
nsCOMPtr<nsISocketTransport> trans = do_QueryInterface (mTransport, &rv);
|
||||
|
||||
nsCOMPtr<nsHTTPRequest> req = dont_AddRef ((nsHTTPRequest *) mRequests -> ElementAt (0));
|
||||
nsHTTPRequest * req = (nsHTTPRequest *) mRequests -> ElementAt (0);
|
||||
|
||||
rv = iStatus;
|
||||
|
||||
@ -725,7 +731,10 @@ nsHTTPPipelinedRequest::OnStopRequest (nsIChannel* channel, nsISupports* i_Conte
|
||||
rv = WriteRequest ();
|
||||
|
||||
if (NS_SUCCEEDED (rv))
|
||||
{
|
||||
NS_IF_RELEASE (req);
|
||||
return rv;
|
||||
}
|
||||
}
|
||||
|
||||
// Notify the HTTPChannel that the request has finished
|
||||
@ -878,20 +887,21 @@ nsresult
|
||||
nsHTTPPipelinedRequest::AdvanceToNextRequest ()
|
||||
{
|
||||
PRUint32 count = 0;
|
||||
nsCOMPtr<nsHTTPRequest> req;
|
||||
nsHTTPRequest *req;
|
||||
|
||||
mRequests -> Count (&count);
|
||||
|
||||
if (count == 0)
|
||||
return NS_ERROR_FAILURE;
|
||||
|
||||
req = dont_AddRef ((nsHTTPRequest *) mRequests -> ElementAt (0));
|
||||
req = (nsHTTPRequest *) mRequests -> ElementAt (0);
|
||||
if (req)
|
||||
{
|
||||
mTransport -> SetNotificationCallbacks (nsnull);
|
||||
req -> mPipelinedRequest = nsnull;
|
||||
|
||||
mRequests -> RemoveElement (req);
|
||||
NS_RELEASE (req);
|
||||
}
|
||||
|
||||
mRequests -> Count (&count);
|
||||
@ -899,10 +909,13 @@ nsHTTPPipelinedRequest::AdvanceToNextRequest ()
|
||||
if (count == 0)
|
||||
return NS_ERROR_FAILURE;
|
||||
|
||||
req = dont_AddRef ((nsHTTPRequest *) mRequests -> ElementAt (0));
|
||||
req = (nsHTTPRequest *) mRequests -> ElementAt (0);
|
||||
|
||||
if (req)
|
||||
{
|
||||
mTransport -> SetNotificationCallbacks (req -> mConnection);
|
||||
NS_RELEASE (req);
|
||||
}
|
||||
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -481,8 +481,8 @@ nsHTTPServerListener::OnStartRequest (nsIChannel* channel, nsISupports* i_pConte
|
||||
mChannel = nsnull;
|
||||
mResponseDataListener = null_nsCOMPtr ();
|
||||
|
||||
nsCOMPtr<nsHTTPRequest> req;
|
||||
mPipelinedRequest -> GetCurrentRequest (getter_AddRefs (req));
|
||||
nsHTTPRequest * req;
|
||||
mPipelinedRequest -> GetCurrentRequest (&req);
|
||||
|
||||
if (req)
|
||||
{
|
||||
@ -492,6 +492,7 @@ nsHTTPServerListener::OnStartRequest (nsIChannel* channel, nsISupports* i_pConte
|
||||
mChannel -> mHTTPServerListener = this;
|
||||
NS_ADDREF (mChannel);
|
||||
}
|
||||
NS_RELEASE (req);
|
||||
}
|
||||
|
||||
return NS_OK;
|
||||
|
Loading…
Reference in New Issue
Block a user