From 81ac052e1d1b0db924c9ef14a90bf22ce1dc4d8b Mon Sep 17 00:00:00 2001 From: hackademix Date: Mon, 3 Sep 2018 19:20:39 +0200 Subject: Better file: protocol support. --- src/content/embeddingDocument.js | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) (limited to 'src/content/embeddingDocument.js') diff --git a/src/content/embeddingDocument.js b/src/content/embeddingDocument.js index 75b0db0..eed04b1 100644 --- a/src/content/embeddingDocument.js +++ b/src/content/embeddingDocument.js @@ -1,18 +1,25 @@ if (ns.embeddingDocument) { ns.on("capabilities", () => { for (let policyType of ["object", "media"]) { - if (!ns.allows(policyType)) { - let request = { - id: `noscript-${policyType}-doc`, - type: policyType, - url: document.URL, - documentUrl: document.URL, - embeddingDocument: true, - }; + let request = { + id: `noscript-${policyType}-doc`, + type: policyType, + url: document.URL, + documentUrl: document.URL, + embeddingDocument: true, + }; + + if (ns.allows(policyType)) { + let handler = PlaceHolder.handlerFor(policyType); + if (handler && handler.selectFor(request).length > 0) { + seen.record({policyType, request, allowed: true}); + } + } else { let ph = PlaceHolder.create(policyType, request); if (ph.replacements.size > 0) { debug(`Created placeholder for ${policyType} at ${document.URL}`); seen.record({policyType, request, allowed: false}); + break; } } } -- cgit v1.2.3