1
0
Fork 0
mirror of https://github.com/mozilla/pdf.js.git synced 2025-04-19 14:48:08 +02:00

Merge pull request #19135 from Snuffleupagus/api-more-optional-chaining

Use even more optional chaining in the `src/display/api.js` file
This commit is contained in:
Tim van der Meij 2024-12-01 14:36:58 +01:00 committed by GitHub
commit 1bc6b767c2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -655,23 +655,26 @@ class PDFDocumentLoadingTask {
*/
async destroy() {
this.destroyed = true;
try {
if (this._worker?.port) {
this._worker._pendingDestroy = true;
}
await this._transport?.destroy();
} catch (ex) {
if (this._worker?.port) {
delete this._worker._pendingDestroy;
}
throw ex;
}
this._transport = null;
if (this._worker) {
this._worker.destroy();
this._worker = null;
if (typeof PDFJSDev !== "undefined" && PDFJSDev.test("MOZCENTRAL")) {
await this._transport?.destroy();
} else {
try {
if (this._worker?.port) {
this._worker._pendingDestroy = true;
}
await this._transport?.destroy();
} catch (ex) {
if (this._worker?.port) {
delete this._worker._pendingDestroy;
}
throw ex;
}
}
this._transport = null;
this._worker?.destroy();
this._worker = null;
}
}
@ -2336,17 +2339,16 @@ class PDFWorker {
*/
destroy() {
this.destroyed = true;
if (this._webWorker) {
// We need to terminate only web worker created resource.
this._webWorker.terminate();
this._webWorker = null;
}
// We need to terminate only web worker created resource.
this._webWorker?.terminate();
this._webWorker = null;
PDFWorker.#workerPorts?.delete(this._port);
this._port = null;
if (this._messageHandler) {
this._messageHandler.destroy();
this._messageHandler = null;
}
this._messageHandler?.destroy();
this._messageHandler = null;
}
/**
@ -2600,10 +2602,9 @@ class WorkerTransport {
new AbortException("Worker was terminated.")
);
if (this.messageHandler) {
this.messageHandler.destroy();
this.messageHandler = null;
}
this.messageHandler?.destroy();
this.messageHandler = null;
this.destroyCapability.resolve();
}, this.destroyCapability.reject);
return this.destroyCapability.promise;