Bug 1433958 - Change URLWorker to use NS_MutateURI r=mayhemer

* Also makes mStdURL be a nsCOMPtr<nsIURI> in order to avoid static_casts

MozReview-Commit-ID: BagXxecHCSK

--HG--
extra : rebase_source : 476fc079fab1375f33dc285c978fa9e3f469ee01
This commit is contained in:
Valentin Gosu 2018-02-26 20:43:46 +01:00
Родитель 84b854ce2c
Коммит 63d237395d
2 изменённых файлов: 11 добавлений и 14 удалений

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

@ -646,16 +646,12 @@ URLWorker::Init(const nsAString& aURL, const Optional<nsAString>& aBase,
}
}
nsCOMPtr<nsIURI> uri;
rv = NS_MutateURI(new nsStandardURL::Mutator())
aRv = NS_MutateURI(new nsStandardURL::Mutator())
.Apply(NS_MutatorMethod(&nsIStandardURLMutator::Init,
nsIStandardURL::URLTYPE_STANDARD,
-1, NS_ConvertUTF16toUTF8(aURL),
nullptr, baseURL, nullptr))
.Finalize(uri);
aRv = rv;
if (NS_SUCCEEDED(rv)) {
mStdURL = static_cast<nsStandardURL*>(uri.get());
}
.Finalize(mStdURL);
return;
}
@ -726,8 +722,7 @@ URLWorker::SetHrefInternal(const nsAString& aHref, Strategy aStrategy,
nsCOMPtr<nsIURI> uri;
aRv = NS_MutateURI(new nsStandardURL::Mutator())
.SetSpec(NS_ConvertUTF16toUTF8(aHref))
.Finalize(uri);
mStdURL = static_cast<net::nsStandardURL*>(uri.get());
.Finalize(mStdURL);
if (mURLProxy) {
mWorkerPrivate->AssertIsOnWorkerThread();
@ -873,7 +868,9 @@ URLWorker::SetProtocol(const nsAString& aProtocol, ErrorResult& aRv)
#define STDURL_SETTER(value, method) \
if (mStdURL) { \
aRv = mStdURL->method(NS_ConvertUTF16toUTF8(value)); \
aRv = NS_MutateURI(mStdURL) \
.method(NS_ConvertUTF16toUTF8(value)) \
.Finalize(mStdURL); \
return; \
}

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

@ -132,7 +132,7 @@ private:
WorkerPrivate* mWorkerPrivate;
RefPtr<URLProxy> mURLProxy;
RefPtr<net::nsStandardURL> mStdURL;
nsCOMPtr<nsIURI> mStdURL;
};
} // namespace dom