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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I assume
pos
is 0-indexed, so the<
check will work. However, why are we using<=
then inensureRange
below? I think theend
is also a 0-indexed position, so it that wrong below?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The way that I've understood
MissingDataException
, and related code, is thatbegin
is inclusive whileend
is exclusive, which should thus explain things; note the formatting used inpdf.js/src/core/core_utils.js
Lines 32 to 35 in 47f208d
To be absolutely sure though, I suppose that you might want @yurydelendik to weigh in here!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@yurydelendik Sorry to bother you, but any chance that you have time to comment here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also, given that a
ensureByte(pos)
call should essentially be equal to aensureRange(pos, pos + 1)
call, that would mean aif (pos + 1 <= this.progressiveDataLength) {
check in the latter case which is how I arrived at the condition under discussion here.