Skip to content

🐛 fix(parser): close scoped nobr - #725

Open
gaborbernat wants to merge 1 commit into
tox-dev:fix/issue-710-xml-findfrom
gaborbernat:fix/718-nobr-adoption
Open

🐛 fix(parser): close scoped nobr#725
gaborbernat wants to merge 1 commit into
tox-dev:fix/issue-710-xml-findfrom
gaborbernat:fix/718-nobr-adoption

Conversation

@gaborbernat

Copy link
Copy Markdown
Member

The adoption-agency path can leave an active nobr entry outside scope after table recovery with an open marquee. A later nobr start tag then nests inside the first element, while the WPT case cited in #718 requires two body siblings.

This patch applies the any-other-end-tag fallback when the adoption agency cannot act on the formatting element. The fallback follows the WHATWG active-formatting rules and leaves the existing adoption path unchanged when it succeeds.

Closes #718.

@gaborbernat gaborbernat added bug Something isn't working area:parser Tokenizer / tree construction spec-conformance Divergence from the literal WHATWG/CSS/Encoding spec labels Aug 9, 2026
@codspeed-hq

codspeed-hq Bot commented Aug 9, 2026

Copy link
Copy Markdown

Merging this PR will improve performance by 5.22%

⚠️ Different runtime environments detected

Some benchmarks with significant performance changes were compared across different runtime environments,
which may affect the accuracy of the results.

Open the report in CodSpeed to investigate

⚡ 1 improved benchmark
✅ 106 untouched benchmarks
⏩ 29 skipped benchmarks1

Performance Changes

Benchmark BASE HEAD Efficiency
test_feature[transform-dense] 41.5 ms 39.4 ms +5.22%

Tip

Curious why this is faster? Comment @codspeedbot explain why this is faster on this PR, or directly use the CodSpeed MCP with your agent.


Comparing gaborbernat:fix/718-nobr-adoption (79a419b) with fix/issue-710-xml-find (0243780)

Open in CodSpeed

Footnotes

  1. 29 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

A table with an open marquee can leave the active nobr formatting entry outside scope. The adoption agency then returns without closing that entry, causing the next nobr start tag to nest.

Apply the specified any-other-end-tag fallback when adoption cannot act. The focused WPT case and reduced controls pin sibling placement.
@gaborbernat
gaborbernat force-pushed the fix/718-nobr-adoption branch from 5eb6271 to 79a419b Compare August 9, 2026 16:43
@gaborbernat
gaborbernat changed the base branch from main to fix/issue-710-xml-find August 9, 2026 16:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:parser Tokenizer / tree construction bug Something isn't working spec-conformance Divergence from the literal WHATWG/CSS/Encoding spec

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Fix nobr adoption across table scope

1 participant