diff --git a/web/pdf_page_view.js b/web/pdf_page_view.js index 8a983c0ef..403976a15 100644 --- a/web/pdf_page_view.js +++ b/web/pdf_page_view.js @@ -1074,6 +1074,10 @@ class PDFPageView extends BasePDFPageView { ); } ).then(async () => { + if (this.renderingState !== RenderingStates.FINISHED) { + // The rendering has been cancelled. + return; + } this.structTreeLayer ||= new StructTreeLayerBuilder( pdfPage, viewport.rawDims diff --git a/web/pdf_viewer.js b/web/pdf_viewer.js index 424180447..70c4d7a58 100644 --- a/web/pdf_viewer.js +++ b/web/pdf_viewer.js @@ -2502,6 +2502,8 @@ class PDFViewer { if (!isEditing) { this.pdfDocument.annotationStorage.resetModifiedIds(); } + // We need to cleanup whatever pages being rendered. + this.cleanup(); for (const pageView of this._pages) { pageView.toggleEditingMode(isEditing); }