diff --git a/mozilla/netwerk/base/public/nsNetUtil.h b/mozilla/netwerk/base/public/nsNetUtil.h index e073b356dfc..972e8ed8f84 100644 --- a/mozilla/netwerk/base/public/nsNetUtil.h +++ b/mozilla/netwerk/base/public/nsNetUtil.h @@ -199,7 +199,8 @@ NS_OpenURI(nsIInputStream **result, nsIIOService *ioService = nsnull, // pass in nsIIOService to optimize callers nsILoadGroup *loadGroup = nsnull, nsIInterfaceRequestor *callbacks = nsnull, - PRUint32 loadFlags = nsIRequest::LOAD_NORMAL) + PRUint32 loadFlags = nsIRequest::LOAD_NORMAL, + nsIChannel **channelOut = nsnull) { nsresult rv; nsCOMPtr channel; @@ -208,8 +209,13 @@ NS_OpenURI(nsIInputStream **result, if (NS_SUCCEEDED(rv)) { nsIInputStream *stream; rv = channel->Open(&stream); - if (NS_SUCCEEDED(rv)) + if (NS_SUCCEEDED(rv)) { *result = stream; + if (channelOut) { + *channelOut = nsnull; + channel.swap(*channelOut); + } + } } return rv; }