fix: sequential footnotes could disappear when overflowing #1636
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.
Previously, if a footnote triggered an overflow (that is, it was too large for the containing space), but footnote-policy didn't make us push down the line containing it, any subsequent footnotes in the same linebox would not be set into a footnote area, because they would never be passed to layout_footnote and report_footnote. (Their call sites would be set, but their content would not be.)
This also fixes a potential infinite loop where using footnote-policy could have forced the first line of a page to be pushed to the next page: that will just result in an infinite loop, so instead we set the line and move on if we are on the first line of a page. (This behavior is not specified in GCPM, but no other behavior seems practical: the only alternative would be to expand the page, which is almost certainly less desirable.)