Simplify some code related to fallbackWorkerSrc and getMainThreadWorkerMessageHandler

This commit is contained in:
Jonas Jenwald 2021-07-28 12:14:07 +02:00
parent 4c679d80ac
commit 5fac0a4350

View File

@ -1905,8 +1905,8 @@ class LoopbackPort {
* @typedef {Object} PDFWorkerParameters * @typedef {Object} PDFWorkerParameters
* @property {string} [name] - The name of the worker. * @property {string} [name] - The name of the worker.
* @property {Object} [port] - The `workerPort` object. * @property {Object} [port] - The `workerPort` object.
* @property {number} [verbosity] - Controls the logging level; the * @property {number} [verbosity] - Controls the logging level;
* constants from {@link VerbosityLevel} should be used. * the constants from {@link VerbosityLevel} should be used.
*/ */
/** @type {any} */ /** @type {any} */
@ -1923,13 +1923,11 @@ const PDFWorker = (function PDFWorkerClosure() {
// Workers aren't supported in Node.js, force-disabling them there. // Workers aren't supported in Node.js, force-disabling them there.
isWorkerDisabled = true; isWorkerDisabled = true;
if (typeof PDFJSDev !== "undefined" && PDFJSDev.test("LIB")) { fallbackWorkerSrc = PDFJSDev.test("LIB")
fallbackWorkerSrc = "../pdf.worker.js"; ? "../pdf.worker.js"
} else { : "./pdf.worker.js";
fallbackWorkerSrc = "./pdf.worker.js"; } else if (typeof document === "object") {
} const pdfjsFilePath = document?.currentScript?.src;
} else if (typeof document === "object" && "currentScript" in document) {
const pdfjsFilePath = document.currentScript?.src;
if (pdfjsFilePath) { if (pdfjsFilePath) {
fallbackWorkerSrc = pdfjsFilePath.replace( fallbackWorkerSrc = pdfjsFilePath.replace(
/(\.(?:min\.)?js)(\?.*)?$/i, /(\.(?:min\.)?js)(\?.*)?$/i,
@ -1953,16 +1951,14 @@ const PDFWorker = (function PDFWorkerClosure() {
} }
function getMainThreadWorkerMessageHandler() { function getMainThreadWorkerMessageHandler() {
let mainWorkerMessageHandler;
try { try {
mainWorkerMessageHandler = globalThis.pdfjsWorker?.WorkerMessageHandler; return globalThis.pdfjsWorker?.WorkerMessageHandler || null;
} catch (ex) { } catch (ex) {
/* Ignore errors. */ return null;
} }
return mainWorkerMessageHandler || null;
} }
// Loads worker code into main thread. // Loads worker code into main-thread.
function setupFakeWorkerGlobal() { function setupFakeWorkerGlobal() {
if (fakeWorkerCapability) { if (fakeWorkerCapability) {
return fakeWorkerCapability.promise; return fakeWorkerCapability.promise;