Merge pull request #969 from arturadib/fix-worker-loader

Fix worker_loader.js for examples/. Simpler code
This commit is contained in:
Brendan Dahl 2012-01-11 17:18:01 -08:00
commit 93bb2cf0d3
3 changed files with 26 additions and 55 deletions

View File

@ -629,8 +629,7 @@ var PDFDoc = (function PDFDocClosure() {
var worker = new Worker(workerSrc);
var messageHandler = new MessageHandler('main', worker);
// Tell the worker the file it was created from.
messageHandler.send('workerSrc', workerSrc);
messageHandler.on('test', function pdfDocTest(supportTypedArray) {
if (supportTypedArray) {
this.worker = worker;

View File

@ -85,13 +85,6 @@ var WorkerMessageHandler = {
handler.send('test', data instanceof Uint8Array);
});
handler.on('workerSrc', function wphSetupWorkerSrc(data) {
// In development, the `workerSrc` message is handled in the
// `worker_loader.js` file. In production the workerProcessHandler is
// called for this. This servers as a dummy to prevent calling an
// undefined action `workerSrc`.
});
handler.on('doc', function wphSetupDoc(data) {
// Create only the model of the PDFDoc, which is enough for
// processing the content of the pdf.

View File

@ -3,26 +3,8 @@
'use strict';
function onMessageLoader(evt) {
// Reset the `onmessage` function as it was only set to call
// this function the first time a message is passed to the worker
// but shouldn't get called anytime afterwards.
this.onmessage = null;
if (evt.data.action !== 'workerSrc') {
throw 'Worker expects first message to be `workerSrc`';
}
// Content of `PDFJS.workerSrc` as defined on the main thread.
var workerSrc = evt.data.data;
// Extract the directory that contains the source files to load.
// Assuming the source files have the same relative possition as the
// `workerSrc` file.
var dir = workerSrc.substring(0, workerSrc.lastIndexOf('/') + 1);
// List of files to include;
var files = [
// List of files to include;
var files = [
'core.js',
'util.js',
'canvas.js',
@ -42,12 +24,9 @@ function onMessageLoader(evt) {
'stream.js',
'worker.js',
'../external/jpgjs/jpg.js'
];
];
// Load all the files.
for (var i = 0; i < files.length; i++) {
importScripts(dir + files[i]);
}
// Load all the files.
for (var i = 0; i < files.length; i++) {
importScripts(files[i]);
}
this.onmessage = onMessageLoader;