@@ -688,20 +688,16 @@ class PDFDocumentLoadingTask {
688688 async destroy ( ) {
689689 this . destroyed = true ;
690690
691- if ( typeof PDFJSDev !== "undefined" && PDFJSDev . test ( "MOZCENTRAL" ) ) {
691+ try {
692+ if ( this . _worker ?. port ) {
693+ this . _worker . _pendingDestroy = true ;
694+ }
692695 await this . _transport ?. destroy ( ) ;
693- } else {
694- try {
695- if ( this . _worker ?. port ) {
696- this . _worker . _pendingDestroy = true ;
697- }
698- await this . _transport ?. destroy ( ) ;
699- } catch ( ex ) {
700- if ( this . _worker ?. port ) {
701- delete this . _worker . _pendingDestroy ;
702- }
703- throw ex ;
696+ } catch ( ex ) {
697+ if ( this . _worker ?. port ) {
698+ delete this . _worker . _pendingDestroy ;
704699 }
700+ throw ex ;
705701 }
706702 this . _transport = null ;
707703
@@ -2101,7 +2097,7 @@ class PDFWorker {
21012097
21022098 static #isWorkerDisabled = false ;
21032099
2104- static #workerPorts;
2100+ static #workerPorts = new WeakMap ( ) ;
21052101
21062102 static {
21072103 if ( typeof PDFJSDev === "undefined" || PDFJSDev . test ( "GENERIC" ) ) {
@@ -2159,14 +2155,11 @@ class PDFWorker {
21592155 this . _webWorker = null ;
21602156 this . _messageHandler = null ;
21612157
2162- if (
2163- ( typeof PDFJSDev === "undefined" || ! PDFJSDev . test ( "MOZCENTRAL" ) ) &&
2164- port
2165- ) {
2166- if ( PDFWorker . #workerPorts?. has ( port ) ) {
2158+ if ( port ) {
2159+ if ( PDFWorker . #workerPorts. has ( port ) ) {
21672160 throw new Error ( "Cannot use more than one PDFWorker per port." ) ;
21682161 }
2169- ( PDFWorker . #workerPorts ||= new WeakMap ( ) ) . set ( port , this ) ;
2162+ PDFWorker . #workerPorts. set ( port , this ) ;
21702163 this . _initializeFromPort ( port ) ;
21712164 return ;
21722165 }
@@ -2206,9 +2199,6 @@ class PDFWorker {
22062199 }
22072200
22082201 _initializeFromPort ( port ) {
2209- if ( typeof PDFJSDev !== "undefined" && PDFJSDev . test ( "MOZCENTRAL" ) ) {
2210- throw new Error ( "Not implemented: _initializeFromPort" ) ;
2211- }
22122202 this . _port = port ;
22132203 this . _messageHandler = new MessageHandler ( "main" , "worker" , port ) ;
22142204 this . _messageHandler . on ( "ready" , function ( ) {
@@ -2363,7 +2353,7 @@ class PDFWorker {
23632353 this . _webWorker ?. terminate ( ) ;
23642354 this . _webWorker = null ;
23652355
2366- PDFWorker . #workerPorts? .delete ( this . _port ) ;
2356+ PDFWorker . #workerPorts. delete ( this . _port ) ;
23672357 this . _port = null ;
23682358
23692359 this . _messageHandler ?. destroy ( ) ;
@@ -2375,13 +2365,10 @@ class PDFWorker {
23752365 * @returns {PDFWorker }
23762366 */
23772367 static fromPort ( params ) {
2378- if ( typeof PDFJSDev !== "undefined" && PDFJSDev . test ( "MOZCENTRAL" ) ) {
2379- throw new Error ( "Not implemented: fromPort" ) ;
2380- }
23812368 if ( ! params ?. port ) {
23822369 throw new Error ( "PDFWorker.fromPort - invalid method signature." ) ;
23832370 }
2384- const cachedPort = this . #workerPorts? .get ( params . port ) ;
2371+ const cachedPort = this . #workerPorts. get ( params . port ) ;
23852372 if ( cachedPort ) {
23862373 if ( cachedPort . _pendingDestroy ) {
23872374 throw new Error (
0 commit comments