diff --git a/src/js/background.js b/src/js/background.js index ca94ca1ecc..dd9710bd3b 100644 --- a/src/js/background.js +++ b/src/js/background.js @@ -801,38 +801,41 @@ Badger.prototype = { return; } - // TODO Add frame_id to executeScript calls - // TODO Add no-op function for executeScript + var executeScriptCallback = function() { + if (chrome.runtime.lastError) { + // Do nothing + } + }; // Insert all scripts // TODO Put this in a loop? chrome.tabs.executeScript(tab_id, { 'file': '/js/contentscripts/fingerprinting.js', - 'allFrames': true, + 'frameId': frame_id, 'runAt': 'document_start' - }); + }, executeScriptCallback); chrome.tabs.executeScript(tab_id, { 'file': '/js/contentscripts/clobbercookie.js', - 'allFrames': true, + 'frameId': frame_id, 'runAt': 'document_start' - }); + }, executeScriptCallback); chrome.tabs.executeScript(tab_id, { 'file': '/js/contentscripts/clobberlocalstorage.js', - 'allFrames': true, + 'frameId': frame_id, 'runAt': 'document_start' - }); + }, executeScriptCallback); chrome.tabs.executeScript(tab_id, { 'file': '/js/contentscripts/supercookie.js', - 'allFrames': true, + 'frameId': frame_id, 'runAt': 'document_idle' - }); + }, executeScriptCallback); if (this.isSocialWidgetReplacementEnabled()) { chrome.tabs.executeScript(tab_id, { - 'file': '/js/contentscripts/fingerprinting.js', - 'allFrames': true, + 'file': '/js/contentscripts/socialwidgets.js', + 'frameId': frame_id, 'runAt': 'document_start' - }); + }, executeScriptCallback); } }, diff --git a/src/js/webrequest.js b/src/js/webrequest.js index ad4111038a..2c18744251 100644 --- a/src/js/webrequest.js +++ b/src/js/webrequest.js @@ -63,15 +63,15 @@ function onBeforeRequest(details) { frame_id = 0; } - badger.recordFrame(tab_id, frame_id, details.parentFrameId, url); badger.insertContentScripts(tab_id, url, frame_id, is_internal); + badger.recordFrame(tab_id, frame_id, details.parentFrameId, url); return {}; } if (type == "sub_frame") { - badger.recordFrame(tab_id, frame_id, details.parentFrameId, url); badger.insertContentScripts(tab_id, url, frame_id, is_internal); + badger.recordFrame(tab_id, frame_id, details.parentFrameId, url); } // Block ping requests sent by navigator.sendBeacon (see, #587)