Merge pull request #8959 from Snuffleupagus/api-worker-version-check
Ensure that the same exact version of PDF.js is used in both the API and the Worker
This commit is contained in:
		
						commit
						25806d17f4
					
				| @ -364,6 +364,15 @@ var WorkerMessageHandler = { | ||||
|     var cancelXHRs = null; | ||||
|     var WorkerTasks = []; | ||||
| 
 | ||||
|     let apiVersion = docParams.apiVersion; | ||||
|     let workerVersion = | ||||
|       typeof PDFJSDev !== 'undefined' ? PDFJSDev.eval('BUNDLE_VERSION') : null; | ||||
|     // The `apiVersion !== null` check is needed to avoid errors during testing.
 | ||||
|     if (apiVersion !== null && apiVersion !== workerVersion) { | ||||
|       throw new Error(`The API version "${apiVersion}" does not match ` + | ||||
|                       `the Worker version "${workerVersion}".`); | ||||
|     } | ||||
| 
 | ||||
|     var docId = docParams.docId; | ||||
|     var docBaseUrl = docParams.docBaseUrl; | ||||
|     var workerHandlerName = docParams.docId + '_worker'; | ||||
|  | ||||
| @ -331,6 +331,8 @@ function _fetchDocument(worker, source, pdfDataRangeTransport, docId) { | ||||
|   if (worker.destroyed) { | ||||
|     return Promise.reject(new Error('Worker was destroyed')); | ||||
|   } | ||||
|   let apiVersion = | ||||
|     typeof PDFJSDev !== 'undefined' ? PDFJSDev.eval('BUNDLE_VERSION') : null; | ||||
| 
 | ||||
|   source.disableAutoFetch = getDefaultSetting('disableAutoFetch'); | ||||
|   source.disableStream = getDefaultSetting('disableStream'); | ||||
| @ -341,6 +343,7 @@ function _fetchDocument(worker, source, pdfDataRangeTransport, docId) { | ||||
|   } | ||||
|   return worker.messageHandler.sendWithPromise('GetDocRequest', { | ||||
|     docId, | ||||
|     apiVersion, | ||||
|     source: { | ||||
|       data: source.data, | ||||
|       url: source.url, | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user