зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1054572 - Don't mark cache entries as classified if on the allow list r=mmc
This commit is contained in:
Родитель
4ee21d300f
Коммит
5d052eb5d5
|
@ -41,6 +41,7 @@ NS_IMPL_ISUPPORTS(nsChannelClassifier,
|
||||||
nsIURIClassifierCallback)
|
nsIURIClassifierCallback)
|
||||||
|
|
||||||
nsChannelClassifier::nsChannelClassifier()
|
nsChannelClassifier::nsChannelClassifier()
|
||||||
|
: mIsAllowListed(false)
|
||||||
{
|
{
|
||||||
#if defined(PR_LOGGING)
|
#if defined(PR_LOGGING)
|
||||||
if (!gChannelClassifierLog)
|
if (!gChannelClassifierLog)
|
||||||
|
@ -122,7 +123,12 @@ nsChannelClassifier::ShouldEnableTrackingProtection(nsIChannel *aChannel,
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
*result = permissions != nsIPermissionManager::ALLOW_ACTION;
|
if (permissions == nsIPermissionManager::ALLOW_ACTION) {
|
||||||
|
mIsAllowListed = true;
|
||||||
|
*result = false;
|
||||||
|
} else {
|
||||||
|
*result = true;
|
||||||
|
}
|
||||||
|
|
||||||
// Tracking protection will be enabled so return without updating
|
// Tracking protection will be enabled so return without updating
|
||||||
// the security state. If any channels are subsequently cancelled
|
// the security state. If any channels are subsequently cancelled
|
||||||
|
@ -259,7 +265,7 @@ void
|
||||||
nsChannelClassifier::MarkEntryClassified(nsresult status)
|
nsChannelClassifier::MarkEntryClassified(nsresult status)
|
||||||
{
|
{
|
||||||
// Don't cache tracking classifications because we support allowlisting.
|
// Don't cache tracking classifications because we support allowlisting.
|
||||||
if (status == NS_ERROR_TRACKING_URI) {
|
if (status == NS_ERROR_TRACKING_URI || mIsAllowListed) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -24,6 +24,8 @@ public:
|
||||||
|
|
||||||
private:
|
private:
|
||||||
nsCOMPtr<nsIChannel> mSuspendedChannel;
|
nsCOMPtr<nsIChannel> mSuspendedChannel;
|
||||||
|
// Set true if the channel is on the allow list.
|
||||||
|
bool mIsAllowListed;
|
||||||
|
|
||||||
~nsChannelClassifier() {}
|
~nsChannelClassifier() {}
|
||||||
void MarkEntryClassified(nsresult status);
|
void MarkEntryClassified(nsresult status);
|
||||||
|
|
Загрузка…
Ссылка в новой задаче