Bug 1419382 - Moving ownership of nsIInputStream when using netUtil functions - part 2 - NS_NewInputStreamChannel, r=smaug

This commit is contained in:
Andrea Marchesini 2017-11-22 11:18:36 +01:00
parent 8a7dedba69
commit ad64933e5a
8 changed files with 25 additions and 22 deletions

View file

@ -1695,9 +1695,10 @@ nsDocShell::LoadStream(nsIInputStream* aStream, nsIURI* aURI,
// build up a channel for this stream. // build up a channel for this stream.
nsCOMPtr<nsIChannel> channel; nsCOMPtr<nsIChannel> channel;
nsCOMPtr<nsIInputStream> stream = aStream;
nsresult rv = NS_NewInputStreamChannel(getter_AddRefs(channel), nsresult rv = NS_NewInputStreamChannel(getter_AddRefs(channel),
uri, uri,
aStream, stream.forget(),
triggeringPrincipal, triggeringPrincipal,
nsILoadInfo::SEC_ALLOW_CROSS_ORIGIN_DATA_IS_NULL, nsILoadInfo::SEC_ALLOW_CROSS_ORIGIN_DATA_IS_NULL,
nsIContentPolicy::TYPE_OTHER, nsIContentPolicy::TYPE_OTHER,

View file

@ -118,7 +118,7 @@ moz_icon_to_channel(nsIURI* aURI, const nsACString& aFileExt,
nsCOMPtr<nsIPrincipal> nullPrincipal = NullPrincipal::Create(); nsCOMPtr<nsIPrincipal> nullPrincipal = NullPrincipal::Create();
return NS_NewInputStreamChannel(aChannel, return NS_NewInputStreamChannel(aChannel,
aURI, aURI,
stream, stream.forget(),
nullPrincipal, nullPrincipal,
nsILoadInfo::SEC_REQUIRE_SAME_ORIGIN_DATA_IS_BLOCKED, nsILoadInfo::SEC_REQUIRE_SAME_ORIGIN_DATA_IS_BLOCKED,
nsIContentPolicy::TYPE_INTERNAL_IMAGE, nsIContentPolicy::TYPE_INTERNAL_IMAGE,

View file

@ -109,7 +109,7 @@ moz_gdk_pixbuf_to_channel(GdkPixbuf* aPixbuf, nsIURI* aURI,
nsCOMPtr<nsIPrincipal> nullPrincipal = NullPrincipal::Create(); nsCOMPtr<nsIPrincipal> nullPrincipal = NullPrincipal::Create();
return NS_NewInputStreamChannel(aChannel, return NS_NewInputStreamChannel(aChannel,
aURI, aURI,
stream, stream.forget(),
nullPrincipal, nullPrincipal,
nsILoadInfo::SEC_REQUIRE_SAME_ORIGIN_DATA_IS_BLOCKED, nsILoadInfo::SEC_REQUIRE_SAME_ORIGIN_DATA_IS_BLOCKED,
nsIContentPolicy::TYPE_INTERNAL_IMAGE, nsIContentPolicy::TYPE_INTERNAL_IMAGE,

View file

@ -1367,7 +1367,7 @@ Loader::LoadSheet(SheetLoadData* aLoadData,
rv = NS_NewInputStreamChannel(getter_AddRefs(channel), rv = NS_NewInputStreamChannel(getter_AddRefs(channel),
aLoadData->mURI, aLoadData->mURI,
stream, stream.forget(),
nsContentUtils::GetSystemPrincipal(), nsContentUtils::GetSystemPrincipal(),
securityFlags, securityFlags,
contentPolicyType); contentPolicyType);

View file

@ -614,15 +614,15 @@ NS_NewInputStreamChannelInternal(nsIChannel** outChannel,
loadInfo); loadInfo);
} }
nsresult /* NS_NewInputStreamChannelPrincipal */ nsresult
NS_NewInputStreamChannel(nsIChannel **outChannel, NS_NewInputStreamChannel(nsIChannel** outChannel,
nsIURI *aUri, nsIURI* aUri,
nsIInputStream *aStream, already_AddRefed<nsIInputStream> aStream,
nsIPrincipal *aLoadingPrincipal, nsIPrincipal* aLoadingPrincipal,
nsSecurityFlags aSecurityFlags, nsSecurityFlags aSecurityFlags,
nsContentPolicyType aContentPolicyType, nsContentPolicyType aContentPolicyType,
const nsACString &aContentType /* = EmptyCString() */, const nsACString& aContentType /* = EmptyCString() */,
const nsACString &aContentCharset /* = EmptyCString() */) const nsACString& aContentCharset /* = EmptyCString() */)
{ {
nsCOMPtr<nsIInputStream> stream = aStream; nsCOMPtr<nsIInputStream> stream = aStream;
return NS_NewInputStreamChannelInternal(outChannel, return NS_NewInputStreamChannelInternal(outChannel,

View file

@ -263,15 +263,15 @@ NS_NewInputStreamChannelInternal(nsIChannel** outChannel,
nsContentPolicyType aContentPolicyType); nsContentPolicyType aContentPolicyType);
nsresult /* NS_NewInputStreamChannelPrincipal */ nsresult
NS_NewInputStreamChannel(nsIChannel **outChannel, NS_NewInputStreamChannel(nsIChannel* *outChannel,
nsIURI *aUri, nsIURI* aUri,
nsIInputStream *aStream, already_AddRefed<nsIInputStream> aStream,
nsIPrincipal *aLoadingPrincipal, nsIPrincipal* aLoadingPrincipal,
nsSecurityFlags aSecurityFlags, nsSecurityFlags aSecurityFlags,
nsContentPolicyType aContentPolicyType, nsContentPolicyType aContentPolicyType,
const nsACString &aContentType = EmptyCString(), const nsACString& aContentType = EmptyCString(),
const nsACString &aContentCharset = EmptyCString()); const nsACString& aContentCharset = EmptyCString());
nsresult NS_NewInputStreamChannelInternal(nsIChannel **outChannel, nsresult NS_NewInputStreamChannelInternal(nsIChannel **outChannel,
nsIURI *aUri, nsIURI *aUri,

View file

@ -289,9 +289,10 @@ nsSAXXMLReader::ParseFromStream(nsIInputStream *aStreamPtr,
// The following channel is never openend, so it does not matter what // The following channel is never openend, so it does not matter what
// securityFlags we pass; let's follow the principle of least privilege. // securityFlags we pass; let's follow the principle of least privilege.
nsCOMPtr<nsIChannel> parserChannel; nsCOMPtr<nsIChannel> parserChannel;
nsCOMPtr<nsIInputStream> tmpStream = stream;
rv = NS_NewInputStreamChannel(getter_AddRefs(parserChannel), rv = NS_NewInputStreamChannel(getter_AddRefs(parserChannel),
mBaseURI, mBaseURI,
stream, tmpStream.forget(),
nullPrincipal, nullPrincipal,
nsILoadInfo::SEC_REQUIRE_SAME_ORIGIN_DATA_IS_BLOCKED, nsILoadInfo::SEC_REQUIRE_SAME_ORIGIN_DATA_IS_BLOCKED,
nsIContentPolicy::TYPE_OTHER, nsIContentPolicy::TYPE_OTHER,

View file

@ -119,9 +119,10 @@ nsRDFXMLParser::ParseString(nsIRDFDataSource* aSink, nsIURI* aBaseURI, const nsA
// The following channel is never openend, so it does not matter what // The following channel is never openend, so it does not matter what
// securityFlags we pass; let's follow the principle of least privilege. // securityFlags we pass; let's follow the principle of least privilege.
nsCOMPtr<nsIChannel> channel; nsCOMPtr<nsIChannel> channel;
nsCOMPtr<nsIInputStream> tmpStream = stream;
rv = NS_NewInputStreamChannel(getter_AddRefs(channel), rv = NS_NewInputStreamChannel(getter_AddRefs(channel),
aBaseURI, aBaseURI,
stream, tmpStream.forget(),
nullPrincipal, nullPrincipal,
nsILoadInfo::SEC_REQUIRE_SAME_ORIGIN_DATA_IS_BLOCKED, nsILoadInfo::SEC_REQUIRE_SAME_ORIGIN_DATA_IS_BLOCKED,
nsIContentPolicy::TYPE_OTHER, nsIContentPolicy::TYPE_OTHER,