diff --git a/src/display/api.js b/src/display/api.js index 0fc1b155a..97c97f95f 100644 --- a/src/display/api.js +++ b/src/display/api.js @@ -1023,7 +1023,6 @@ class PDFPageProxy { // If there's no displayReadyCapability yet, then the operatorList // was never requested before. Make the request and create the promise. if (!intentState.displayReadyCapability) { - intentState.receivingOperatorList = true; intentState.displayReadyCapability = createPromiseCapability(); intentState.operatorList = { fnArray: [], @@ -1125,7 +1124,6 @@ class PDFPageProxy { if (!intentState.opListReadCapability) { opListTask = {}; opListTask.operatorListChanged = operatorListChanged; - intentState.receivingOperatorList = true; intentState.opListReadCapability = createPromiseCapability(); intentState.renderTasks = []; intentState.renderTasks.push(opListTask); @@ -1241,7 +1239,7 @@ class PDFPageProxy { Object.keys(this.intentStates).some(function(intent) { const intentState = this.intentStates[intent]; return (intentState.renderTasks.length !== 0 || - intentState.receivingOperatorList); + !intentState.operatorList.lastChunk); }, this)) { return; } @@ -1290,7 +1288,6 @@ class PDFPageProxy { } if (operatorListChunk.lastChunk) { - intentState.receivingOperatorList = false; this._tryCleanup(); } } @@ -2092,19 +2089,21 @@ class WorkerTransport { const page = this.pageCache[data.pageIndex]; const intentState = page.intentStates[data.intent]; + if (intentState.operatorList) { + // Mark operator list as complete. + intentState.operatorList.lastChunk = true; + + for (let i = 0; i < intentState.renderTasks.length; i++) { + intentState.renderTasks[i].operatorListChanged(); + } + page._tryCleanup(); + } + if (intentState.displayReadyCapability) { intentState.displayReadyCapability.reject(new Error(data.error)); } else { throw new Error(data.error); } - - if (intentState.operatorList) { - // Mark operator list as complete. - intentState.operatorList.lastChunk = true; - for (let i = 0; i < intentState.renderTasks.length; i++) { - intentState.renderTasks[i].operatorListChanged(); - } - } }, this); messageHandler.on('UnsupportedFeature', this._onUnsupportedFeature, this);