diff options
-rw-r--r-- | ext/bg/js/util.js | 22 | ||||
-rw-r--r-- | ext/mixed/js/core.js | 5 |
2 files changed, 5 insertions, 22 deletions
diff --git a/ext/bg/js/util.js b/ext/bg/js/util.js index fa31b0d8..a0f31653 100644 --- a/ext/bg/js/util.js +++ b/ext/bg/js/util.js @@ -15,33 +15,11 @@ * along with this program. If not, see <https://www.gnu.org/licenses/>. */ -function utilFunctionIsolate(func) { - return function isolatedFunction(...args) { - try { - args = args.map((v) => clone(v)); - return func.call(this, ...args); - } catch (e) { - try { - String(func); - } catch (e2) { - // Dead object - return; - } - throw e; - } - }; -} - function utilBackgroundIsolate(data) { const backgroundPage = chrome.extension.getBackgroundPage(); return backgroundPage.clone(data); } -function utilBackgroundFunctionIsolate(func) { - const backgroundPage = chrome.extension.getBackgroundPage(); - return backgroundPage.utilFunctionIsolate(func); -} - function utilBackend() { const backend = chrome.extension.getBackgroundPage().yomichanBackend; if (!backend.isPrepared()) { diff --git a/ext/mixed/js/core.js b/ext/mixed/js/core.js index fec26a0e..7cdd62d8 100644 --- a/ext/mixed/js/core.js +++ b/ext/mixed/js/core.js @@ -192,6 +192,11 @@ const clone = (() => { return clone; })(); +// Expose clone function on the global object, since util.js's utilBackgroundIsolate needs access to it. +if (typeof window === 'object' && window !== null) { + window.clone = clone; +} + /* * Async utilities |