Browse Source

Pass the `PDFJS.postMessageTransfer` parameter to the worker, so that the `MessageHandler` can be setup correctly in `createDocumentHandler` (issue 6957)

This regressed in commit acdd49f480, i.e. PR 6571.

Fixes 6957.
Jonas Jenwald 9 years ago
parent
commit
91756f6e86
  1. 4
      src/core/worker.js
  2. 3
      src/display/api.js

4
src/core/worker.js

@ -480,6 +480,10 @@ var WorkerMessageHandler = PDFJS.WorkerMessageHandler = {
var workerHandlerName = docParams.docId + '_worker'; var workerHandlerName = docParams.docId + '_worker';
var handler = new MessageHandler(workerHandlerName, docId, port); var handler = new MessageHandler(workerHandlerName, docId, port);
// Ensure that postMessage transfers are correctly enabled/disabled,
// to prevent "DataCloneError" in older versions of IE (see issue 6957).
handler.postMessageTransfers = docParams.postMessageTransfers;
function ensureNotTerminated() { function ensureNotTerminated() {
if (terminated) { if (terminated) {
throw new Error('Worker was terminated'); throw new Error('Worker was terminated');

3
src/display/api.js

@ -454,7 +454,8 @@ function _fetchDocument(worker, source, pdfDataRangeTransport, docId) {
cMapPacked: PDFJS.cMapPacked, cMapPacked: PDFJS.cMapPacked,
disableFontFace: PDFJS.disableFontFace, disableFontFace: PDFJS.disableFontFace,
disableCreateObjectURL: PDFJS.disableCreateObjectURL, disableCreateObjectURL: PDFJS.disableCreateObjectURL,
verbosity: PDFJS.verbosity verbosity: PDFJS.verbosity,
postMessageTransfers: PDFJS.postMessageTransfers,
}).then(function (workerId) { }).then(function (workerId) {
if (worker.destroyed) { if (worker.destroyed) {
throw new Error('Worker was destroyed'); throw new Error('Worker was destroyed');

Loading…
Cancel
Save