Skip to content

Commit e65d3bd

Browse files
committed
Better fallback for failing syncMessage.
1 parent 7aeac83 commit e65d3bd

File tree

2 files changed

+7
-6
lines changed

2 files changed

+7
-6
lines changed

src/bg/RequestGuard.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -660,7 +660,7 @@ var RequestGuard = (() => {
660660
policy.navigationURL = url;
661661
let debugStatement = ns.local.debug ? `
662662
let mark = Date.now() + ":" + Math.random();
663-
console.debug("domPolicy", domPolicy, document.readyState, mark);` : '';
663+
console.debug("domPolicy", domPolicy, document.readyState, location.href, mark, window.ns);` : '';
664664
return `
665665
let domPolicy = ${JSON.stringify(policy)};
666666
let {ns} = window;

src/content/staticNS.js

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
let listenersMap = new Map();
2424
let backlog = new Set();
2525

26-
var ns = {
26+
let ns = {
2727
debug: true, // DEV_ONLY
2828
get embeddingDocument() {
2929
delete this.embeddingDocument;
@@ -91,12 +91,13 @@
9191
this.syncFetchPolicy();
9292
} else {
9393
let msg = {id: "fetchPolicy", url, contextUrl: url};
94-
if (document.readyState === "complete") {
95-
// no point fetching synchronously, since the document is already loaded (hot extension update?)
94+
debug(`Synchronously fetching policy for ${url}.`);
95+
let policy = browser.runtime.sendSyncMessage(msg);
96+
if (!policy) {
97+
debug(`Couldn't retrieve policy synchronously, trying async.`);
9698
(async () => this.setup(await browser.runtime.sendMessage(msg)))();
9799
} else {
98-
debug(`Synchronously fetching policy for ${url}.`);
99-
this.setup(browser.runtime.sendSyncMessage(msg));
100+
this.setup(policy);
100101
}
101102
}
102103
},

0 commit comments

Comments
 (0)