diff options
author | wolfbeast <mcwerewolf@wolfbeast.com> | 2019-09-01 16:44:47 +0200 |
---|---|---|
committer | wolfbeast <mcwerewolf@wolfbeast.com> | 2019-09-01 18:20:28 +0200 |
commit | 8f7d40e854f2941c2ddd75fb6532407e07a72609 (patch) | |
tree | 9e302ed366574011329b125961c5f60252e739e9 | |
parent | 09a8b2f19689b679b1268a3004ec5e3f37b9732a (diff) | |
download | uxp-8f7d40e854f2941c2ddd75fb6532407e07a72609.tar.gz |
Issue #1222: Don't load plugin instances when they have no `src` URI.
Favor fallback content in that case (if present). Fallback is always
considered "good" in this case so may end up doing nothing which is what
we'd want for corner cases that hammer this routine with no content.
-rw-r--r-- | application/palemoon/app/profile/palemoon.js | 9 | ||||
-rw-r--r-- | dom/base/nsObjectLoadingContent.cpp | 8 |
2 files changed, 17 insertions, 0 deletions
diff --git a/application/palemoon/app/profile/palemoon.js b/application/palemoon/app/profile/palemoon.js index ee71c4ea18..df46ea4b63 100644 --- a/application/palemoon/app/profile/palemoon.js +++ b/application/palemoon/app/profile/palemoon.js @@ -682,6 +682,15 @@ pref("plugins.update.notifyUser", false); //Enable tri-state option (Always/Never/Ask) pref("plugins.click_to_play", true); +// Platform pref is to enable all plugins by default. +// Uncomment this pref to default to click-to-play +// pref("plugin.default.state", 1); + +// Don't load plugin instances with no src declared. +// These prefs are documented in detail in all.js. +pref("plugins.favorfallback.mode", "follow-ctp"); +pref("plugins.favorfallback.rules", "nosrc"); + #ifdef XP_WIN pref("browser.preferences.instantApply", false); #else diff --git a/dom/base/nsObjectLoadingContent.cpp b/dom/base/nsObjectLoadingContent.cpp index 590f236c05..4978744e82 100644 --- a/dom/base/nsObjectLoadingContent.cpp +++ b/dom/base/nsObjectLoadingContent.cpp @@ -3628,6 +3628,14 @@ nsObjectLoadingContent::HasGoodFallback() { } } + // RULE "nosrc": + // Use fallback content if the object has not specified a src URI. + if (rulesList[i].EqualsLiteral("nosrc")) { + if (!mOriginalURI) { + return true; + } + } + // RULE "adobelink": // Don't use fallback content when it has a link to adobe's website. if (rulesList[i].EqualsLiteral("adobelink")) { |