[Pkg-javascript-commits] [pdf.js] 60/115: Worker shall wait for MessageHandler to be created at api side.

David Prévot taffit at moszumanska.debian.org
Wed Dec 16 20:03:16 UTC 2015


This is an automated email from the git hooks/post-receive script.

taffit pushed a commit to branch master
in repository pdf.js.

commit 8dff301ce19f2298f3e48fa187b2a62e1bf3af33
Author: Yury Delendik <ydelendik at mozilla.com>
Date:   Wed Nov 25 18:21:23 2015 -0600

    Worker shall wait for MessageHandler to be created at api side.
---
 src/core/worker.js | 12 +++++++-----
 src/display/api.js |  1 +
 2 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/src/core/worker.js b/src/core/worker.js
index c456340..97842d0 100644
--- a/src/core/worker.js
+++ b/src/core/worker.js
@@ -84,7 +84,7 @@ var WorkerMessageHandler = PDFJS.WorkerMessageHandler = {
       return WorkerMessageHandler.createDocumentHandler(data, port);
     });
   },
-  createDocumentHandler: function wphCreateDocumentHandler(data, port) {
+  createDocumentHandler: function wphCreateDocumentHandler(docParams, port) {
     // This context is actually holds references on pdfManager and handler,
     // until the latter is destroyed.
     var pdfManager;
@@ -92,8 +92,8 @@ var WorkerMessageHandler = PDFJS.WorkerMessageHandler = {
     var cancelXHRs = null;
     var WorkerTasks = [];
 
-    var docId = data.docId;
-    var workerHandlerName = data.docId + '_worker';
+    var docId = docParams.docId;
+    var workerHandlerName = docParams.docId + '_worker';
     var handler = new MessageHandler(workerHandlerName, docId, port);
 
     function ensureNotTerminated() {
@@ -346,7 +346,6 @@ var WorkerMessageHandler = PDFJS.WorkerMessageHandler = {
         }
 
         pdfManager = newPdfManager;
-
         handler.send('PDFManagerReady', null);
         pdfManager.onLoadedStream().then(function(stream) {
           handler.send('DataLoaded', { length: stream.bytes.byteLength });
@@ -567,7 +566,10 @@ var WorkerMessageHandler = PDFJS.WorkerMessageHandler = {
       });
     });
 
-    setupDoc(data);
+    handler.on('Ready', function wphReady(data) {
+      setupDoc(docParams);
+      docParams = null; // we don't need docParams anymore -- saving memory.
+    });
     return workerHandlerName;
   }
 };
diff --git a/src/display/api.js b/src/display/api.js
index 1b8dce1..654de95 100644
--- a/src/display/api.js
+++ b/src/display/api.js
@@ -359,6 +359,7 @@ PDFJS.getDocument = function getDocument(src,
         throw new Error('Loading aborted');
       }
       var messageHandler = new MessageHandler(docId, workerId, worker.port);
+      messageHandler.send('Ready', null);
       var transport = new WorkerTransport(messageHandler, task, rangeTransport);
       task._transport = transport;
     });

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-javascript/pdf.js.git



More information about the Pkg-javascript-commits mailing list