diff --git a/web/pdf_page_view.js b/web/pdf_page_view.js index 80b47fcf5..4cf99d3fe 100644 --- a/web/pdf_page_view.js +++ b/web/pdf_page_view.js @@ -1080,6 +1080,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 780c062be..4333d4c55 100644 --- a/web/pdf_viewer.js +++ b/web/pdf_viewer.js @@ -2525,6 +2525,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); }