Prevent browser exceptions from incorrectly triggering the assert
in PDFPageProxy._abortOperatorList
(PR 11069 follow-up)
#11308
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
For certain canvas-related errors (and probably others), the browser rendering exceptions may be propagated "as-is" to the PDF.js code. In this case, the exceptions are of the somewhat cryptic
NS_ERROR_FAILURE
type.Unfortunately these aren't actual
Error
s, which thus ends up unintentionally triggering theassert
inPDFPageProxy._abortOperatorList
; sorry about that!To reproduce this problem, open https://github.com/mozilla/pdf.js/files/703007/PeakLoadGrowth_Redacted.xlsx.pdf#page=2 (from issue 7952) and zoom in a couple of times until rendering breaks and the fallback bar is displayed in Firefox.