Fixed nsHTTPChannel::GetEventSink(...) to addref the event sink being returned. This is consistant with XPCom guidelines..

This commit is contained in:
rpotts%netscape.com 1999-06-24 11:00:46 +00:00
Родитель 9dca85f93d
Коммит 323c65c8b7
2 изменённых файлов: 14 добавлений и 6 удалений

Просмотреть файл

@ -295,8 +295,16 @@ nsHTTPChannel::GetResponseString(char* *o_String)
NS_IMETHODIMP
nsHTTPChannel::GetEventSink(nsIHTTPEventSink* *o_EventSink)
{
*o_EventSink = m_pEventSink;
return NS_OK;
nsresult rv;
if (o_EventSink) {
*o_EventSink = m_pEventSink;
NS_IF_ADDREF(*o_EventSink);
rv = NS_OK;
} else {
rv = NS_ERROR_NULL_POINTER;
}
return rv;
}

Просмотреть файл

@ -242,10 +242,10 @@ nsresult nsHTTPResponseListener::FireOnHeadersAvailable()
if (m_bHeadersDone) {
// Notify the event sink that response headers are available...
nsIHTTPEventSink* pSink= nsnull;
m_pConnection->GetEventSink(&pSink);
if (pSink) {
pSink->OnHeadersAvailable(m_pConnection);
nsCOMPtr<nsIHTTPEventSink> sink;
m_pConnection->GetEventSink(getter_AddRefs(sink));
if (sink) {
sink->OnHeadersAvailable(m_pConnection);
}
// Check for any modules that want to receive headers once they've arrived.